Introducing input XML Formatters.

TODO: Stylecop.
XmlOutputFormatters will be in a separate PR.
We need tests for the overridable methods `CreateXmlReader` and `CreateXmlSerializer`