Generalise multiprocess test execution.

The previous method worked fine under detox, but didn't allow nose's
--processes=? flag to be used. This method uses a more general method
which allows both.
Resolve conflicts.
Merge branches 'kgaughan-nose-multiprocess' and 'master'
Note now-supported nosetests alternative.
Use new feature.
Make the parameter list data.

This way, it can be reused for the command line arguments.
Command line argument parsing.
Command line runner.