More robust message parsing

This replaces the usage of attributes from the System.Xml.Serialization namespace, as discussed in #3.
Is this a valid representation of an email? Does it really have no mandatory child elements?