Feature - Notifications System

A new notifications system that handles all notifications on the board and is easily extendable (new notification types and methods can very easily be added via extensions or in the core).

Ticket: http://tracker.phpbb.com/browse/PHPBB3-11103
RFC: http://area51.phpbb.com/phpBB/viewtopic.php?f=108&t=42829

## Bugs: ##

## To-do: ##

## Done: ##
* Framework for storing notification options for each user
* Notification subscription option grouping (subscribing for one notification can be used as an option for multiple types)
* UCP Notification Options
* UCP Notification Options - grouping and explanation text
* UCP Notification list
* No duplicate notifications (such as a reply to a topic which a user is quoted in and is subscribed to)
* Notification Grouping (ex: if two people reply to the same topic before you see the notification, it is only 1 notification)
* Prettify notification output
* Ability to mark notifications as read when clicking on them (this is needed for some notification types that cannot be marked as read otherwise without clicking the mark read link).
* Hooks (automatically load other notification types and methods)
* Unit Tests
* Subsilver2 support

### Notification Types: ###
* Private Message notifications
* New post notifications
* New topic notifications
* Notifications of someone quoting you
* Notifications of replies to bookmarked topics
* Topic and Post dis/approved notifications
* Posts/Topics need approval notifications (for moderators)
* Reported pm/posts notification (for moderators)
* Report closed notification

### Notification Methods: ###
* Email notification method
* Jabber notification method

## Future ideas (after merging): ##
* Cron to purge old notifications
* Explore: Create text field on users table; cache notification list as a serialized array in it; clear it when adding/deleting/updating notifications for a user.

### Notification Types: ###
* Username tagging (@EXreaction)
* Bumped topics notification
* Admin activation notification
* Group invite/approve/disapprove/demote/promote

### Notification Methods: ###
* RSS/ATOM Feeds (requires generating/managing secret access keys)
* SMS notification method (this would be nice, but SMS support is outside of the scope of this ticket).