Added HttpParser to parse http requests and responses.
Made a couple of changes for testibility.
- Add IStreamFactory to abstract sockets away for easy unit testing.