Fix asynchronous task scheduling
- restore the prototype for asynchronous scheduling, expanding the changes of !452 (merged);
- add a trivial test.
More refactoring will come soon here. This MR is just to quickly get this back working, hoping to see it in v30r3.
Edited by Illya Shapoval