parse(argv) {
    this.program.parse(argv);

    return {
      inFile: this.getInputFile(),
      outFile: this.opts().outFile,
      replace: this.getReplace(),
      transforms: this.getTransforms(),
    };
  }
Parses and validates command line options from argv.

- On success returns object with options.
- On failure throws exceptions with error message to be shown to user.

@param {String[]} argv Raw command line arguments
@return {Object} options object