Add support for client-id header on Connection.

This adds a OClientId to Copt: allow client identification for
persistant connextions.
Allow additional headers on subscribe

You can pass custom headers on SUBSCRIBE.
Useful to configure ActiveMQ (see http://activemq.apache.org/stomp.html).

A client can now be a persistant subscriber to a topic:

conTopic = withConnection_ "amq" 61613 [OClientId "htest"] $ \c -> do
  let iconv _ _ _ = return . U.toString
  q <- newReader c "Test1" "/topic/topictest" [] [("activemq.subscriptionName", "htest")] iconv
  listen q