Coroutine-level 'cancel' clause is now fully functional

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>