code: function Suite(name, options) {
      var me = this;
  
      // allow instance creation without the `new` operator
      if (me == null || me.constructor != Suite) {
        return new Suite(name, options);
      }
      // juggle arguments
      if (isClassOf(name, 'Object')) {
        // 1 argument (options)
        options = name;
      } else {
        // 2 arguments (name [, options])
        me.name = name;
      }
      setOptions(me, options);
    }
docs: The Suite constructor.
  
  @constructor
  @memberOf Benchmark
  @param {String} name A name to identify the suite.
  @param {Object} [options={}] Options object.
  @example
  
  // basic usage (the `new` operator is optional)
  var suite = new Benchmark.Suite;
  
  // or using a name first
  var suite = new Benchmark.Suite('foo');
  
  // or with options
  var suite = new Benchmark.Suite('foo', {
  
  // called when the suite starts running
  'onStart': onStart,
  
  // called between running benchmarks
  'onCycle': onCycle,
  
  // called when aborted
  'onAbort': onAbort,
  
  // called when a test errors
  'onError': onError,
  
  // called when reset
  'onReset': onReset,
  
  // called when the suite completes running
  'onComplete': onComplete
  });