More robust message parsing

This replaces the usage of attributes from the System.Xml.Serialization namespace, as discussed in #3.
TBH, *for now*, it looks (a bit) reasonable to me... That's mostly because I am currently in a phase where I figure out how the API might look like, and also what specifications the application is going to satisfy.