Improve support for sending messages to a broker

Improvements to GenericToStompTransformer:

 - The default protocol message type is now configurable. This allows
   the transformer to be used when sending messages to the browser
   (where the default should be MESSAGE) and to a broker (where the
   default should be SEND).
 - The application of various headers now takes into account the type
   of the message. For example, message-id is only sent if the message
   type is MESSAGE.

Improvements to MessageChannelArgumentResolver:

 - The channel that's returned copies the sessionId from the received
   message into the outbound message. This ensure that the sessionId
   is available to the relay service, where it can be used to lookup
   the relay session.