Added an interface so that task wrappers can be identified.  This way we can remove tasks from the main pool, which have been submitted by sub pools/limiters.
Adding unit tests for the recently added functionality (and even improved on unit test for old functionality).  This also fixes some check style warnings, as well as an issue of removing the task from a scheduled task that was provided to a limiter.
Merge pull request #44 from threadly/remove_wrapped_tasks_from_PriorityScheduledExecutor

Added an interface so that task wrappers can be identified, to allow removal of tasks submitted into sub pools.