cmCTest*Command: Generalize argument parsing and checking Move the instantiation of unparsed arguments as well as the `parser.Parse` call behind an abstraction. Merge checks on `captureCMakeError`.