Saved JobHolders over app restart

Job holders now remain over application restart. Timed jobs are failed
fast if the notification of them completing happens when client not
connected.
Events now in EventHolder allows saving of notifications when app is
restarted.

Other bug fixes and timed job fixes.