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'