Refactoring locatorFetchRunnable and few others.

Fixed a bug where re-scheduled jobs are still marked as "running".
* renamed clearFromRunning -> markFinished
* renamed pushBackToScheduled -> reschedule extracted ShardedService
* extracted SlotCheckScheduler, commented ScheduleContext extensively (probably need a better name).
* commented LocatorFetchRunnable extensively, renamed to SlotCheckRunnable.
NIT: totally up to you, but going by the convention followed throughout the codebase, may be the method name should start on a different line than the `override` annotation.