don't use OpenStructs for headers and bodies

once you have nested hashes in your message body, the inconsistency in
accessing via dot or hash syntax starts to feel icky. let the client
choose what they want to do with it.