it doesn't work. Start next flag isn't getting set in SystemSimulator when exit is called
I'm a moron: fixed SystemSimulator halting issue by changing call on next from run() to start().
changed some comments/messages, minor refactoring.