Break a header class out of the message class

In anticipation of adding attributes it made since to move out the
header aspect of the message into it's own class.