Running repair steps in parallel and minor changes

Every time I look at this function I tell myself I'm going to change the signature to be just a single "options" variable, and pass in the result of the CLI parser.