* M uses exit! in order to reliable finish and run and return the
correct error status to the terminal. This however means that no at_exit
handlers will ever get run. Apparently, Minitest uses this to run the
after_run blocks, as discussed in issue #38.
This change addresses the need by:
* Getting the after_run callbacks directly and running then before
returning the run output. This mimics Minitest's procedure on the
at_exit handler (as suggested by @jeremyevans). It does get a bit into
the internals of Minitest, which I'd like to avoid, but I see no other
way at the moment.