Fixed challenge prize logic to avoid double paying
Fixes #1959: petCount was only being updated...

in groupsCtrl.js. This made profile.petCount blank unless the current
user viewed himself in chat. I put the code to set profile.petCount into
userCtrl.js.

Note: petCount (not profile.petCount) is still always equal to the
current user's pet count. There is probably a better solution than this,
I just don't know enough about AngularJS to make it.
update justin guide re: todos adding 1MP
add notif on iOS for math updates
Initial commit: unlock notification, new modals
restore NaN history entries (@djuretic thanks!)
Remove sliding effect on avatar mouseover
remove math updates notif now that things have settled down a bit (most
updates now should be subtle). @wc8 @sabrecat let me know if you think
this is premature
add GET /api/v2/content which lists all item definitions @magicmicky
Quests: initial Bosses WIP - invite, accept, reject, etc
Quests: hurt boss via score method, refactor chat function, change all content.*.name to content.*.key for consistency
quests: add abort feature
bosses: no models, performance improvements
Fix unit tests
Add Orb of Rebirth to shop, image to modals, tweak modal text
Implement Rebirth in controllers and API, revise modal per @wc8 feedback
quests: add collection quests, incl. polar bear pt 2, and quest arks, and achievements
add missing-gems migration
rename user.party.tally => user.party.progress
bosses: pretty things up amongst the modals, etc. Move rewards to a
directive so we can share it. Add dialog on quest-completion using
user.party.quest.completed flag