Bj0rnen/simple repair runner

Maybe this alternative RepairRunner is not a lot shorter than the original one. Hopefully it's simpler to keep track of the various states that it can be in, though. It is designed to be the only runner in control of its RepairRun. I left a number of TODOs in there, but it can handle Reaper restart and hanging repairs via usage of a timeout.
What if we have some segments in ERROR state here? Probably not a big issue, unless there are majority of segments in ERROR.