Added a simple way to get an executor that only runs on a given key
Did something similar with the TaskSchedulerDistributor that I previously did with the TaskExecutorDistributor.  I did however need to seperate that interface into two, since the TaskSchedulerDistributor does not currently handle anything with futures.
Some unit tests for newly added functionality
Fix test structures for new interface structures
More unit tests for recently added functionality
Added a TODO note to implement issue #35