Added a Forum

Resolves #498.
Resolves #895.

http://jenkins.buttonweavers.com:8080/job/buttonmen-AdmiralJota/142/

Depends on #862 for hashbang and color support.

@blackshadowshade: I'm guessing glassonion will probably ask you to look at the SQL in this one as well.

@cgolubi1: You'll probably want to pay special attention to ```Env.prepareRawTextForDisplay()```, as this is what now santizes user input for display (for both chat and the forum). We're also putting the raw user input into the ```data-rawPost``` attribute in ```Forum.buildPostRow```. I believe this is safe, but I wanted to give you a heads up anyway. It probably deserves a little extra testing attention.

I assume that as soon as this goes online, there'll be a half dozen new tickets with suggestions for improvements...
Hmm, so we don't sanitize what the user puts inside `[game]` or `[player]` links?  Is that scary?  Ah, no, it isn't, because whatever's inside the link is parsed as text.  So e.g. if i browse to `http://localhost:8080/ui/game.html?game=3%26amp%3Bsurrender%3DTrue`, i get "Specified game is not a valid number. Nothing to do." (and of course the args show up in the link text).  So that seems okay.