A quiet release: nav bar robustness

There was a fair amount of weird behavior with the nav bar’s game list. For example, if you visited a game sometimes it wouldn’t appear in the list until you refreshed.

These bugs occurred because the nav bar is actually pulling data from a number of different sources to be able to show you things: some data is local like if you changed the game title and it hasn’t synced yet; other data comes down from the server like from the “gimme all my games” endpoint; and other data comes down from the server from the websocket when your GM updates the title.

I was being a bit lax with how I wrote the code handling all those data streams, but it’s a hard enough problem that lax code certainly won’t do it: thus bugs. All to say, I gave the data handling a much more serious look and made things robust.

Not aware of any more of these weird bugs, but I’ll keep an eye out.