Refactor game state initialization.

"State everywhere" approach has been replaced in favor of purely
functional game initialization, with no global refs.
Shift route claiming to purely functional impl.
Add lame half-loop to the start.
Remove redundant loop.
Fix tests to match new code.