code: function loadConfig() {
    if (options.config) {
      console.log(`Using config.json found at ${options.config}`);
      const normalizedPath = normalize(options.config);
      const configStr = readFileSync(`${normalizedPath}/config.json`).toString();
      return JSON.parse(configStr);
    }
    try {
      const configStr = readFileSync('./config.json').toString();
      console.log('Using config.json found in project folder');
      return JSON.parse(configStr);
    } catch (e) {
      const psTasksRoot = process.env['PSTASKS_ROOT'];
      if (!psTasksRoot) {
        throw new Error('Unable to locate config. PSTASKS_ROOT env var not set.');
      } else {
        const normalizedPath = normalize(psTasksRoot);
        try {
          const configStr = readFileSync(`${psTasksRoot}/config.json`)
            .toString();
          console.log(`using config.json in PSTASKS_ROOT: ${psTasksRoot}`);
          return JSON.parse(configStr);
        } catch (e) {
          console.log(`error reading config.json found at ${psTasksRoot}`);
        }
      }
  
    }
    console.log('Could not load config.json -- all three loading methods failed');
    return null;
  }
docs: Returns a config object by checking three sources in this order:
  1. If there was a --config option passed in the cli options, use the
  config.json file provided there.
  2. If 1 failed, and there is a config.json file in the project folder, use that config.json
  3. If 1 and 2 failed, and there is an environment variable PSTASKS_ROOT, use the config.json in that directory.
  4. If the first 3 failed, throw an error.
  
  @return {object|null}