Refactor to ease overwriting socket operations
Buffer can now be injected into Socket
Merge pull request #4 from clue/ref

Refactor to ease overwriting socket operations