Removed pool module

The API wan't very powerful and it overlapped with the TaskPoolExecutor,
which is far more complete.
Prevent destroy() from being executed if the loop is not running
Convert errnos in io.tcp module
Allow hostnames in TCPClient.connect, use getaddrinfo
Added clear method to ReadBuffer class
Clear read buffer when it's closed
Added basic logger
Fixed behavior inconsistency of EventLoop.destroy.