XmlFormatter Refactoring
#CHANGE: XmlFormatter now works using XDocuments internally, instead of raw XmlWriter / XmlReader objects.
#CHANGE: BinaryFormatter now uses NonClosing Stream wrappers rather than not disposing its internal BinaryWriter / BinaryReader objects.