`Q.isPromiseAlike` detects an object with a `then` method. `Q.isPromise` detects a promise created by Q.