Better Task behavior

1. Tasks now update themselves, and return true for done() when
completed.
Session now updates and removes completed tasks