function isPromise(obj) {
  return obj && typeof obj.then === 'function'
}
Determines if the given object is a promise instance.

@memberof Shim.prototype
@param {*} obj - The object to check.
@returns {boolean} True if the object is a promise, else false.