CompoundReporter gathers all other reporters

Since they all quack the same
List all classes that inherit from Runnable
Runnable.run runs all the tests

Class method `run` is inherited downwards and will be responsible for
running all the sub classes tests
Set default io in TestCase

Also, improve tests that depended on line numbers
Runnable.runnables can be overridden
Space up summary output
Rtest.run dispatches the reporters to run all tests

I Copied minitests autorun setup, it got way to complicated to figure that
out
Return where the empty test is

Not where the error was raised, that's rtest internals