Simplified time unit conversion (and fixed a couple places that were technically incorrect, but I don't think were possible to hit)
Did not mean to remove this javadoc
Did an initial implementation of scheduleAtFixedRate.  This does not currently have any unit testing (and thus is not ready to be merged into the main development branches)
Catch this exception from recurring tasks if we are shutting down.
Merge branch 'unstable_staging' into PriorityScheduledExecutorServiceWrapper-scheduleAtFixedRate
Starting to increase functionality in the TestRunnable to track usage in parallel (which currently can only be done from the TestRunnable, although that too is being improved).
More improvements to the TestRunnable for handling when the run is finished, as well as detecting if it ran concurrently.
Implemented unit tests for this new functionality.  I also emphisized that using this functionality should be with caution (but better than just throwing an UnsupportedOperationException)
Reduced some code duplication now that TestRunnable is capable of accepting a delay on construction.
Further code duplication in unit tests reductions.  In addition solved a unit test failure due to always using the native sleep in TestRunnable (which I want to keep since it should represent computational work).  So needed to bring back the SleepThread inner class to TestablePrioritySchedulerTest.
Added a small utility for blocking when you have a bunch of futures you want to wait to have complete.
Decided to split this interface into two.  That way you can get future functionality without needing to provide scheduling.
Changes to make use of the most recent interface changes.  ExecutorLimiter and TaskExecutorDistributor both have submitter capabilities now (even though they only take an executor).

In addition ExecutorWrapper was created to easily convert an Executor into a submitter (and even handle ListenableFutures)
Merge remote branch 'origin/unstable_staging' into unstable_staging
Tried to make these function calls un-ambigious to prevent confusion and possible problems.
We should only throw this exception if it is greater than the max pool size, not the core pool size.
I keep going back and forth if we should maintain this class or not, since now that threadly has Future support it is a lot less useful. However, while examining it, I did think of a couple use cases where it may be useful.  So I decided to keep it for now, and reduced some code duplication which existed within it.
Merge branch 'master' into reduced_string_duplication

Conflicts:
	src/main/java/org/threadly/concurrent/PriorityScheduledExecutor.java