Changed the name of the calls in the StatisticTracker for getting stats on how often a worker was avaialble
I also made a change to the DynamicDelayQueue to remove the spin lock.  This simplifies the logic a fair amount, and in mosts cases actually improved job run time accuracy.
Added an optimization for the ConcurrentArrayList reposition functionality.  This way when we reposition from either the front or end to the respective opposite, we may be able to avoid an array copy.
I implemented this as such so that we try to only do these extra checks if there is a possibility we can gain from the improvement (which makes the code slightly more complicated to look at, but should perform well).

I also fixed a unit test failure that could occur in the ClockWrapperTest
Removed the option to create a "non-thread safe" NoThreadScheduler.  The overhead of synchronizing is probably not a big deal if there is no lock contention, and this makes our unit tests and code quite a bit smaller and simpler.
In addition I improved the remove functionality to use the same remove logic that the PriorityScheduledExecutor was using (and thus traverse the containers if they exist)
More love for the NoThreadScheduler, better error checking to match the other schedulers.  Also added a unit tests, and fixed a bug where recurring tasks could not be removed while they were running.
Fix for synchronizing on the wrong object from my last push.

Renamed a few inner-classes for clarity
Some additional unit test coverage
This resolves #56.  Benchmarking showed minimal (if any) conditions where using an ArrayDeque would be slower.  And other situations where there is a substantial improvement.  So switching out the implementation for an ArrayDequeue.
Removed the CallableDistributor.  This was created before threadly had first class Future support.  Now that future support is included this could easily be done within code by using a blocking queue of futures, or a hash map of futures.
Added @since tags to the class javadocs (so we know what was included when).  I am defaulting these all to 1.0.0 release, even though many were introduced earlier (just don't want to track when all were introduced)
Whoops, logic error with ! when should be == (yay unit tests)
Merge branch 'master' into gradle_changes