Big update to tasks class, still draft.