model/notification: Extracted events table

The notification table had a lot of duplicated data before. It makes more
sense to have a list of things that happened (events) and a separate
list of notifications about these things and their status (read/not read).
model/notification: Added "Type" subclass
controllers/notifications: Removed unnecessary join
controllers/notifications: Use inner join where appropriate
model/notification: Use inner join where appropriate
controllers/notifications: Use string-based join()
controllers/notifications: Removed unnecessary Query.all() call

The query is iterable directly.
Merge branch 'master' into notifications

Conflicts:
	skylines/model/notification.py
model/notification: Fixed broken type constants
model/notification: Moved count_unread_notifications() into Notification
model/notification: Added query_unread() classmethod
model/notification: Simplified create_flight_comment_notifications()
Merge pull request #40 from Turbo87/notifications

model/notification: Extracted events table