Ensure that Q.asap functions always return promise

Fixes #497