Adding request and response serialisation

I have added the serialisation/deserialisation + unit tests - per http://byterot.blogspot.co.uk/2012/07/serialising-request-and-response-in.html.

I have also added a tool (DeepComparer) that compares properties of objects deeply (does not support indexed properties yet) which is useful in Unit Tests.

I will add EntityRange as a separate PR.