More robust message parsing

This replaces the usage of attributes from the System.Xml.Serialization namespace, as discussed in #3.
Given the current definition of the `EmailReference` record type, can you ever build a valid value of that type from this XML?