I think we should do `isPromise` for kew promises and `isPromiseLike` for everything else (just like Q and when.js are doing)