code: public synchronized static void initConfig(Map<ConfigProperty, String> initialValues) {
          SeLionLogger.getLogger().entering(initialValues);
  
          // only do this if the global config is not already initialized.
          if (xmlConfig == null) {
              xmlConfig = new XMLConfiguration();
              // don't auto throw, let each config value decide
              xmlConfig.setThrowExceptionOnMissing(false);
              // because we can config on the fly, don't auto-save
              xmlConfig.setAutoSave(false);
  
              // Set defaults
              loadInitialValues();
          }
  
          /*
           * otherwise, update the global config
           */
  
          // Load in our supplied values (if defined)
          loadValuesFromUser(initialValues);
  
          // Load in environment & system variables (if defined)
          loadValuesFromEnvironment();
  
          // Init Selenium configuration
          boolean runLocally = xmlConfig.getBoolean(ConfigProperty.SELENIUM_RUN_LOCALLY.getName());
          if (runLocally) {
              xmlConfig.setProperty(ConfigProperty.SELENIUM_HOST.getName(), "localhost");
          }
  
          SeLionLogger.getLogger().exiting();
      }
docs: Initializes the configuration, reloading all data while adding the supplied <code>initialValues</code> to the
  configuration.
  
  @param initialValues
  The initial set of values used to configure SeLion