DefaultConnection::send now writes deliverable to socket.
DefaultConnection::send now reads socket after sending deliverable.
SessionConnection::send now returns a future Receivable.
The first read after sending is size of header.
DefaultConnection now properly receives a protocol object
future value is set when payload is received.
Expected Receivable is returned.
Error handling if errors occur during reading.
HostConnectionFactory::create_client_info now works.
Provided some meat on the skeleton of Host and Log

Currently created some regressions in the system tests because no
classes are keeping the socket alive.
Renamed SocketListener::receive_bytes to bytes_received.
Added write_succeeded to be called when a write operation succeeds.
Added Socket::keep_alive to the Socket interface.

Implementation to be written in DefaultSocket.
Socket::async_write now takes a SocketListener
Fixed problem in async_accept.
DummySocket now implements a more realistic socket.
Use write_succeeded instead of posting a new read operation immediately after the write operation.
Added some logging
Rewrote starting the connection
Use socket keep_alive and write_succeeded.