Remove asap dep and rely on Promise semantics for deferred execution