code: function(name, defaults) {
          _argValidator.checkString(name, 1, 'Invalid appName (arg #1)');
          if (!_argValidator.checkObject(defaults)) {
              defaults = {};
          }
  
          if (!_isInitialized) {
              _config = _rc(name, defaults);
              _isInitialized = true;
          }
  
          // Reference to the current module.
          return module.exports;
      }
docs: Configures global configuration settings, include application name, and
  initial default values for the configuration. This method must be invoked
  before any calls to
  [getConfig()]{@link module:config.getConfig} in order to ensure that
  configuration objects are configured correctly.
  
  <p>
  Note that invoking this method multiple times could change the reference
  to the config object returned via a call to the
  [getConfig()]{@link module:config.getConfig} method.
  </p>
  
  @param {String} name The application name to use when loading up the
  configuration data. See
  [rc standards]{@link https://www.npmjs.com/package/rc#standards}
  for more information on the naming and placement of application
  configuration files.
  @param {Object} [defaults={}] The default configuration properties to
  initialize the config with.
  
  @return {module:config} A reference to the current module, allowing for
  chaining of method calls.