Added a callback feature to all tasks