Class (constructor, [base1[, base2[, ... baseN]],], [methods]) Class (constructor, [base1[, base2[, ... baseN]],]); Class (methods)
function Class(ctor) {
        if (is('Object', ctor)) {
            // no constructor function passed, let's fall back to a default
            return Class(null, ctor);

        } else {
            return base(arguments, ctor || function() {});
        }
    }