Add spectator feature
Improve spectator scoreboard panels

Players will now always be inserted above spectators (ie. spectators
will always appear last), making it easier to see who is actually
playing.
Merge latest upstream code.
Merge branch 'upstream' into spectator
NOTE: I have not yet considered how to support spectators with the new hash URLs; it's likely something will go funny with the current implementation.
Merge branch 'spectator' of https://github.com/uecasm/PretendYoureXyzzy into uecasm-spectator
change "View" button to "Spectate"
Remove game list refresh broadcast when spectator joins a game (the related player join broadcast was removed in 638fac7)
Fix not loading black card when joining a game as a spectator.
formatting