SRFI states:
Additionally, *if* the matching test-begin installed a new
test-runner, then the test-end will de-install it [...]
Current implementation removes the installed test-runner
unconditionally, regardless of whether it was set by test-begin or not.
My solution is to put the cleanup function that will unset the
test-runner into a newly created runner's on-final slot.
That way this finalizer will run only if test-begin set its own
test-runner.