This would allow us to know in advance how many tests are supposed to run. See #11.
We could wrap the complexity of this into a test runner. The runner could take a reporter as an argument and return a boolean or even do a process exit. We could also have more than one runner, depending on our needs. This would retain the simplicity of the current approach, which just exports a boolean.