Resets the window hash location when you trigger a new game.
Polyfills localStorage in case it's not defined.
Saves and loads the difficulty level to and from localStorage.
Make save/load of intrinsic types easier.
Moves color has game loading into a Game object.
Saves pins when they change.
Saves chutes when they change.
Saves on render if rerender is happening.
Fixes a parsing bug when loading arrays from storage.
Only tries to load a saved game if you visit a hashed URL.
Shows clear balls and pins on first visit instead of numbered ones.
Fixes a bug where the "New Game" button didn't reset the pins and balls.
Saves the scoreboard state and reloads it when the game's loaded.
Only reparses numbers as numbers on load.
Saves chutes when they render instead of every state change.
Fixes a bug where arrays with one item weren't loaded correctly.
Moves the Game code so it can reuse all the other code.
Reworks logic so saved games only load if the hash matches.
Fixes a bug where the PRNG didn't save and reload correctly.
Fixes a bug where replaying a shared game didn't work.