This solves #69.  This seems to be the most performant way to enable the ability to get a queue size.

This expands the constructor amount quite a lot, but it does offer the new feature of being able to query for the queue size for a given key.

Based on my benchmarks, this change has minimal (if any) performance penalties.
Merge pull request #73 from jentfoo/TaskExecutorDistributor-getTaskQueueCount-switchable_accuracy

Add ability to query task queue length for a given thread key (third pull request)
Added unit tests for recently added ability to get queue size from the TaskExecutorDistributor
I also added a couple other unit tests that I noticed were missing
This is for issue #66, which will remain open till 2.0.0 is released
This renames ListenableFutureResult into SettableListenableFuture.  The old ListenableFutureResult will continue to exist till the 2.0.0 release, but it just depends on the implementation of SettableListenableFuture now.