Add shutdown method to shutdown the thread pool.
Add maven assembly configuration to create jar-with-dependencies

Use: mvn assembly:assembly
Formatting tidy
Formatting change
Throw InterruptedException rather than swallowing it
Unit test for KeenClient.shutdown()

In order to function in the tests, and possibly in practice, a new KeenClient needs to be able to resurrect the EXECUTOR_SERVICE.

This change also has the possible benefit that a user can easily override the type of ExecutorService created by overriding the createExecutorService() method.

This has the side-effect that the EXECUTOR_SERVICE is not available until the first KeenClient is constructed.

I have also changed shutdown(long) to be a static method to reflect the fact that it shutdown the EXECUTOR_SERVICE for all KeenClients.
merge pull request 4 (add shutdown method to shutdown the thread pool)
Merge branch 'pr/5' (Add maven assembly configuration to create jar-with-dependencies)