Better test coverage

& along for the ride comes a whole host of good functionality improvements as well.

Still no support for named groups of steps though.