docs: function (__config) {
  
              // Check that supplied configuration is valid
              if (typeof __config == "object" || __config == undefined) {
  
                  config = extend(config, _config);
  
                  // Allow overriding logger
                  log = new Log({
                      destination: config.logger || console,
                      logLevel: config.logLevel
                  });
  
              // Fail ...
              } else {
                  
                  // We need to create a fallback logger
                  log = new Log({
                      destination: console,
                      level: 3
                  });
  
                  log.throw("core", TypeError("Supplied configuration not valid, must be object or undefined. Supplied type: " + typeof _config));
              }
  
              // Allow chaining
              return root;
  
          }