Returning the new task id when you schedule a new task
Just enqueuing the task if we were asked to schedule it in the past
Basic enqueueing of tasks which are due to run
Handling no tasks being due to be queued