Add docstrings to clarify the behavior of message.create() when both
an exception and detail are passed as arguments. Updates the
user_messages section of the contributor docs to reflect the changes
introduced in Pike by implementation of the "Explicit user messages"
spec. Adds tests to prevent regressions.
Closes-bug: #1822000
Change-Id: Ia0425dc9c241d0c101057fbc534e68e7e5fdc317