Simplify the Serializer

This removes support for SimpleSerializer and JMSSerializer. This is in
order to centralize the format so we can specify a formal requirement.

To do this and share with others it uses bernard/normalt which makes
the delegation to other normalizers easier.

In the process DefaultMessage have gotten its internals refactored and
now uses __get/__set to support setting the variables instead of actual
properties (this is also a much better way of doing it).

This replaces #114

__NOTE__ This changes the format that messages are saved as. Which is a HUGE BC break, maybe we should not do this.