Dont skip steps after the first Then

Hi

I've added a feature whereby if the test runner has already visited the first `Then` step, it won't skip subsequent steps if the current step fails.

It makes sense to ignore subsequent steps if something goes wrong in the Arrange or Act phases because the system will be in an unknown state. But typically, in the Assert phase, each assert is independent and does not affect the state of the system so if one fails the rest can still run.

I've added a test and checked that nothing else breaks.