Added NetworkIOException handling to Pooled connections - Fixes #149

-Changed the way that the pool interacts with the Executor so that a checked exception of type NetworkIOException will be bubbled back up to the caller
-Added a few tests for my new code as well as testing a couple of the features of the pool that I couldn't find tests anywhere for