Added Boost.Log dependency.
Removed AbstractClientSocket class.
Make waiting events in SocketSingle optional.
Separated nonblocking and timeout logic in SocketSingle.
Added SocketListener class.