Introducing input XML Formatters.

TODO: Stylecop.
XmlOutputFormatters will be in a separate PR.
Should we wrap the request stream into the DelegatingStream before we call CreateXmlReader as it is an overridable method...i think the intention of it was to discourage users from closing the stream as they do not own it...