Overriding this function is not necessary
So I droped the visibilty from protected to private, and removed the overriden implementation.
There is one key difference between recurring tasks in java.util.concurrent.    ScheduledExecutorService and threadly's interfaces...this fixes the oversight of when a recurring task throws an exception.
This commit solves this in two ways.  The first is to better document threadly's behavior, so it is more obvious how it is different (as I feel threadly's behavior is closer to what most people expect).  The second is to make the wrapper classes that implement ScheduledExecutorService (PriorityScheduledExecutorServiceWrapper / SingleThreadSchedulerServiceWrapper), match the java.util.concurrent behavior (which it already was for scheduleAtFixedRate, just not scheduleWithFixedDelay).  Then the wrapper ScheduledExecutorServiceWrapper's behavior now matches threadly's interface expectations.
I also fixed some small behavior where throwables could be thrown.
Fix a unit test failure on the slow ec2 instance (were not waiting long enough)