Moved a couple verifications out of the PriorityScheduler
These now live in the "StrictPriorityScheduler" which is used in unit tests (so they are still being verified internally, but we no longer need to take the verification load in our normal runtime).
I also added a few small unit tests to get us that little bit of extra code coverage.
No need to check twice if the worker is running
deprecated StringUtils.EMPTY
A colleague convinced me it has limited value, and is not worth matinaing, so it will be removed in 3.0.0
Removed deprecated API's for 3.0.0 release
This resolves #97 and saves about 2.5KB in the jar size (which obviously does not include the unit test code).  I also incremented the versions, preparing this for the future 3.0.0 release.