This MR fixes the issue of the tester not producing output when a test executable segfaults or other system error occurs.
It also adds an option to generate a hostfile which explicitly specifies the maximum number of required slots when running MPI executables, since newer versions of OpenMPI now stop jobs requesting more than the number of available CPU cores by default (which causes our buildbot to fail).