(Notifications) Change router callback to take object {'stream', 'notification'} instead of String[]
(Notifications) Emit event when delivering notifications and activities
(Notifications) Centralize principal updates to DAO for more stable cache eviction
(Notifications) Switch api.group to use dao for principal update
(Notifications) Partial commit, starting unit tests. Squash me
(Notifications) Fixed routing with a couple unit tests
(Notifications) Count unread notifications rather than a simply flag
(NotificationsEmails) Starting emails
(NotificationsEmails) Adding oae-email module.
(NotificationsEmail) Adding a bunch of stuff. Broken, so squash me.
Unit tests passing. Removed testing templates to start adding real ones.
(NotificationsEmail) Fixes from testing, adding sample notify-content-share template
(NotificationsEmails) Improved user caching. No longer invalidates user when updated, just updates the cache
(NotificationsEmails) 'RecentCommenters' notifications, improved content privacy for activity, documentation
(NotificationsEmails) Templates, Unit Tests

* Added all notifications email templates
* Added unit tests for template selection
* Added more method documentation
(NotificationsEmails) Unit tests for template errors, and individual notifications
(NotificationsEmails) Changes from self-review
(NotificationsEmails) Fix broken build.
Added /api/ui/skin as a global admin endpoint
Merge branch 'master' into skinning
Misc fixes
Added sections and subsection for LESS file