Added overloads taking TextReader and stream

Interface now looks like this:

```C#
public interface IXmlSerializer
{
    void Serialize(Stream stream, object o);
    void Serialize(TextWriter textWriter, object o);
    T Deserialize<T>(string path);
    T Deserialize<T>(TextReader stringReader);
    T Deserialize<T>(Stream stream);
}
```