Do a task-killed check at the start of task 'timeslices'.
Add BlockedTask (wake, try_block, etc) in kill.rs.
Change the HOF context switchers to pass a BlockedTask instead of a ~Task.
Add test::with_test_task() convenience function.
Add tests for task killing and blocking.
Stash a spare kill flag inside tasks, to save two atomic xadds in the blocking fastpath.
Add option::take(), the building block of the option::swap_* family.
Replace *rust_task ptrs in taskgroup code with TaskHandle, for transitioning to newsched killing.
(cleanup) Modernize taskgroup code for the new borrow-checker.
(cleanup) Don't check taskgroup generation monotonicity unless cfg(test).
(cleanup) impl TaskSet
Fix linked failure tests to block forever instead of looping around yield.
Enable taskgroup code for newsched spawns.