Update notifications

This adds `object_type` and `object_id` to the Notifications table. It also refactors a bit to help the notification generation make a little more sense.

Is it worth updating the notifications in the production database to include the relevant data for this? Or, just understand moving forward that only new notifications will have this data? If so, what's the best way to do that? Rake task?