Overhauled the Xml Serialization Process

The Data Contract Serializer was giving me fits, so it's using the XmlSerializer now.