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
This is the most perforamnt solution I can find so far for issue #69
I have not decided if it is worth keeping or not yet.