throws on invalid date
immediate execution
documentation
introduced naming of tasks
scheduler emits events for every attached task