Moving to non-blocking implementation of Task without heavyweight state machine