core: new TaskManager to handle Looping, Scheduled and Delayed tasks.

If interval is specified a Looping task is created.
If delay is specified a Delayed task is created.
If cron_expression is specified a Scheduled task is created.
Else an immediate task is run