Removed ScheduleJobNow, Added Schedule

Motivation is that calling ScheduleJob with time.Now as first
argument is just as simple as ScheduleJobNow.

The new Schedule is for skipping the Task creation step in user
code. Since the current implementation of Task does not have any
extra setup available this method should be used in most cases.
Removed NoMore constant, split into two new ones instead.

NoPlan: is for a Planner to return when there is no plan available
for the given Job.

noTask: an internal constant for the queue to indicate that there
are currently no tasks waiting and we should do something else
instead.
Added a limit to the sleeping durations in the scheduler routine
Fixed race condition in the Stop method of the Scheduler