Added static call to get a single instance
This is just to avoid having to construct and toss these away all the time.
Performance and cleanup improvements to the TaskExecutorDistributor and TaskSchedulerDistributor
This includes:
* Performance improvements for scheduled tasks, we now start the task worker on the scheduled thread if we can (meaning if the worker is not already running)
* Performance improvements for shortly lived task keys, by avoiding to construct the ArrayDeque till necessary
* Unit test improvements to improve code coverage and behavior verification
* Deprecated some of the definitions to try to make things more uniform (scheuleTask instead of schedule, similar to how we have submitTask compared to submit)
Added a deprication notice here for issue #65 and #68
No functional changes, just code cleanup
* Removed an enum from PriorityScheduledExecutor that is not used
* Cleaned up the if/else logic in the TaskExecutorDistributor worker
* Handling InterruptedExceptions consistently by making sure that interrupted status is reset
The statistic tracker was not handling the fix for issue #34
This fixes that, as well as cleans up the logic for the low priority tasks a little.
Merge pull request #71 from jentfoo/v1.2.0_improvements

V1.2.0 improvements