This is the first discrete notifications objects after /r/3009. This also fixes
an issue in /r/3009 where PurpleNotification was still marked as a final type.
Testing Done:
I have a WIP branch for updating the Pidgin side that I used to verify functionality but it has some issues so isn't included here.