Actually fix fundamental FSM problems.

I think now I'm getting back around to the point where I can start
tracking down the errors behind the useless blank screen that's just
erroring out instantly.