renames SystemStateMachineTests to EngineStateMachine

Apart from that looks good.

I'm starting a new project today, so I'll give it a good run in.