Journals might get updated by a second change done to the journable within the aggregation time limit
carried out by the same user.
In that case, the journal should not be considered `completed`.
* destroy notifications upon journal destruction
* breakup spec by journable
* have a dedicated job for scheduling journal completed events
* generate notifications in delayed job
* route wiki journal events through notifications
* combine mail sending for notifications into single job
* robustness if a journal is deleted
* linting
* differentiate BaseJournal and AssociatedJournal
BaseJournal holds the data of a journal that reflects the columns in the journaled model while AssociatedJournal reflects the columns of a model associated to the journaled model via a has_many/one association
* route news journal events through notifications
This does not yet include notifications for comments on news
* include news comment in notification workflow
* have the whole workflow in a single state machine job
* include forum message in notification workflow
* include document in notification workflow
* less dependencies from acts as watchable
* fix, test and document workflow job