Resolves a deferred with a cancellation value.
('a: Deferred 'f 's).() => 'a :: mutates 'a
cancel() { moveToState(this, Cancelled()); return this; }