Merge branch 'upstream' into emotes
Add player name to idle judge skip log message
Disable being able to click card while waiting for the server to acknowledge the previous card play. This should fix the client removing the incorrect card from the hand. Also fixes losing a card when it is selected but not confirmed, but you run out of time to play, the card was removed from your hand. This ought to fix #55.
Merge branch 'blanks' of https://github.com/uecasm/PretendYoureXyzzy into uecasm-blanks
Looks like cah.constants.js wasn't updated for BLANKS_LIMIT.
Merge branch 'emotes' of https://github.com/uecasm/PretendYoureXyzzy into uecasm-emotes
refactor emote code to have withEmote in one place.
Merge branch 'score-cmd' of https://github.com/uecasm/PretendYoureXyzzy into uecasm-score-cmd
Merge pull request #62 from uecasm/no-dealt

Stop tracking dealt cards in the server, as this is not actually used.
properties file support for game and player limits. add this information to stats.jsp
add cookie domain to pyx.properties so all servers can share the same cookie
Add config option to use inactive cardsets. Rename cookie domain config option to be more consistent.
- Remove some pointless @Provides methods and .bind().toInstance().
- Use a single global Timer and schedule multiple TimerTasks on it. Moving to a ScheduledThreadPoolExecutor may be preferable as now all TimerTasks are serialized.
- Fix tests that were broken by changed behavior in 638fac780a0b88f74ffcb826e9b869f26baaec50 (shows how often I run the few crappy tests I have...)
update changelog
Use max_users config option and deny access to new users if there are too many connected.
switch my postgres host. this shouldn't even be checked in but whatever
Comment and variable name cleanup. Change default spectators to 0.
Kick non-admins after being idle for an hour. Any user activity resets this timer. This is a roundabout way of addressing #52, but brings more to the table in general and is significantly simpler than making each game have a timer task to manage it.

Increase the ping timeout delay from 45 seconds to 90 seconds, while reducing the timeout on long poll requests on the client side to 30 seconds. (This is still less than the 25 seconds that LongPollServlet will wait.)
Wrap TimerTask.run in a try-catch so an exception can't kill all processing.
changelog