[0.3] Socket client

New SocketClient component extracted from HttpClient, with added error handling for async connection failure.

This is based on requests for standalone async client connections and reactphp/stomp#19.

TODO:

* More tests?
* udp? unix sockets?