imply this function createCancelableAsyncFunction(hfn: (cancelController) => fn): [cancelableFn: anyFn, controller]