Move quit check into TreeWalker
Rename
Move method back into scenario
Move code to fail a scenario from hooks
Split StepCollection and StepInvocations

Note, this may have introduced dead code, as it's unclear which methods
are used by which role.