Achievements

Voila Achievements. I included fixtures for all 'first-time-get' scenarios, adding more is child's play but I wanted approval of these first. Included are 3 scripts that can be fired up using `coffee <script-name>`. (Before I start, `recalculating` means `awarding a player an earned achievement after the facts`)

- `scripts/setupAchievements`: Removes all achievements and _related_ earned achievements in the database and sets up a bunch of fixtures (19 at time of writing). They don't have icons, as icons should be uploaded through the editor so we can use our `/file` backend to handle that.
- `scripts/recalculateStatistics`: A bunch of stats are now tracked. Running this script will recalculate thos stats that can be recalculated from data available in the database. Some can't be, like 'amount of patches accepted'. This should trigger a bunch of achievements on its own.
- `scripts/recalculateAchievements`: Does not accept arguments because it's only meant for the migration. Recalculates all possible achievements it finds for all users. If individual achievements need to be recalculated, a button in the achievement editor is available that triggers the recalculation process for the achievement in question.

I know you won't but just to be sure, please don't accept this yet. While all tests run fine, I'm sure there'll be enough things here and there you'd like me to handle different.

Oh right, this big PR also includes the new user section. I don't think you've ever demo'ed that so try and give it a spin.

P.S.: Please don't ask me to rebase. I've made a new habit of merging instead of rebasing so all branches now exactly what to do (remember all those conflicts when pulling into `feature/achievements`?). Mixing the two strategies last time out worked out awfully. 

EDIT: There's one big nuisance right now: Achieving multiple achievements at the same time will result in an annoying situation. Only one of the two gets shown. This is a bug, not sure whether it's ours or from the Notify.js library we use. In any case, I filed a bug [here](https://github.com/jpillora/notifyjs/issues/25) and I'm still looking myself. I'm also looking to make the popups handle multiple achievements at the same time in a better manner.
Yeah I only found out about the conditional call `?()` yesterday when reading through some of Nick's code! Will change.