Meganuke

This changes the suite to run every test in a "sandbox" via a executor user in order to fix #1225.

A test will be run by `testrunner` and then instead of a `stop` function being called to ask the framework to shut down nicely, we exit the shell started for `testrunner` and `kill -9` everything that that user started.

Preface: none of the numbers posted here are official in any capacity; they are here only as a proof of concept that tests are able to start, be stopped, and bind to ports. These numbers should be considered suspect since this is a new hardware environment and no tuning has been done towards tuning to a preview or final run. These numbers are simply here to prove that tests can be reliably stopped now.

[This](https://gist.github.com/msmith-techempower/4c81cfb49dcc12977169) is a preview-style run done on the Peak hardware using a build of the `meganuke` branch from about a week ago. One can search for "port" and will see a few, but not many, errors trying to bind to a port. I added more checks before tests are run to ensure that the ports are available before failing.

[This](https://gist.github.com/msmith-techempower/1e4b7595bb10bcc9ab00) is an preview-style run done on the Peak hardware illustrating that every test that started successfully bound to the port to which it was trying to bind.
I know I keep harping this, but can we please have a comment like `WARN: testrunner will not have sudo access by round 11 - please begin migrating scripts to not rely on sudo` or something similar, everywhere we see testrunner associated with sudo. Otherwise this entire process is just pointless, as any process using sudo will be owned by root, not by testrunner, and cannot be killed with the killall script. We cannot forget this, or it's just repeating the problem in a year