function isAsyncFunction(fn) {
  return fn.constructor.name === 'AsyncFunction'
}
Determines if function is an async function.
Note it does not test if the return value of function is a
promise or async function

@memberof Shim.prototype
@param fn
@param (function) function to test if async
@returns {boolean} True if the function is an async function