Avoid warnings on shutdown if the logger is gone

Closes issue #18.
Update NEWS
Minor cleanup on documentation overview page
Add donation link to documentation
Don't try to open or close sockets twice
Split code into separate modules

Split the monolithic .api module into separate modules implementing the
connection, table, and batch parts. The public API is still the same,
since all functionality is available from the main 'happybase'
namespace, so this is just an internal cleanup.
Update test coverage module list in setup.cfg
Always access Thrift client instance through connection
A few minor PEP8 cleanups
Reorder a few statements in Connection constructor

First check for valid arguments, then assign instance attributes, and do
all this in the same order as the arguments are specified in the
constructor signature.
Move Thrift object creation to helper method
Capture output from tests
Add thread-safe connection pool

See issue #21.
Add tests for the connection pool
Include connection pool API in docs
Mention connection pool in NEWS
Add 'versionadded' markup to docs