Changed ListenableFutureTask to be a leaner more efficent version to function when we know there is no possibility of handling VirtualRunnables or VirtualCallables.  Then added ListenableFutureVirtualTask (which is the same old implementation of ListenableFutureTask) to handle cases when it is possible to be dealing with a VirtualRunnable or VirtualCallable.  There may be more performance to be improved in the future, but this is a minor first step.
Fix for unit test failures with recurring tasks
Added a javadoc to fix checkstyle warning
One more javadoc I missed
Fix for small error in implementation for Future isDone() interface when handling canceled items