added oneOf, hasFunctions and isJqueryPromise