QPIDJMS-21, QPIDJMS-20: update the message type identification process

- Use the "x-opt-jms-msg-type" message annotation as the first means of
  identifying the JMS message type.
- Set the "x-opt-jms-msg-type" message annotation when creating new
  Message, MapMessage, ObjectMessage, BytesMessage instances. Others TBC.
- Interpret messages which contain an amqp-value section holding
  something other than Binary or null/String (e.g map or list) to be
  ObjectMessages if they omit the "x-opt-jms-msg-type" annotation.
- Change the message type annotation to a byte

git-svn-id: https://svn.apache.org/repos/asf/qpid/jms/trunk@1594946 13f79535-47bb-0310-9956-ffa450edef68