testbench: add subtest support

These will be used in in-kernel testing, and where the iteration count for an
userspace test cannot be determined ahead of time.

The reporting script was changed to only drop leading carriage returns rather
than all leading whitespace in Mung::Loop. This preserves the subtest heading,
which is four spaces per level (according to what Test::More uses). The output
could still be prettier, but w/e -- at least this way it doesn't overtly
break.