Mochitestification 2

Final pieces. This allows the test harness to be kept open after tests complete so we can run add-on tests in the same runtime. It also cleans up consoleListener properly if we want to re-use the test harness in a single loader.