Refactor and improve multiprocess support in the test suite.

You can now use '-m' on arbitrary test files, and combine it with other options such as '-f', '-v', '-R'...