Make all messages serializable

Given that the foundation of all protocol messages are primitives, there is no reason why one shouldn't be able to serialize them. This way, the enduser can cache the message using any formatter he or she wants.