More robust message parsing

This replaces the usage of attributes from the System.Xml.Serialization namespace, as discussed in #3.
Why not enumerate the `email/to/address` nodes and convert them in a `map`? Why unzip something only to zip them again?