Message class

This patch adds a new Message class that wraps a C `zmq_msg_t` instance.  You can retrieve the contents of the message using the `data()` method.  The Socket class now has “raw” versions of `send` and `recv` that take in Message instances instead of strings.  That lets you read a message from one socket and write that same message to another without requiring any copying.