Move signal handling from persistence module to its own module.
Invert relationship between events and persistence: events doesn't
know about persistence or hardcode it as a listener, and persistence
does know about events and registers itself as a listener.

Also: restore the distinction between persistence's record_startup
and record_change, which I'd mistakenly ignored in 'cleanup' change
9eb77892638272cdf3a3a4f2bf311cb29c258ffb.
Add "reports" module which sends notifications in response to certain
events.

Right now, it just handles system startup and shutdown, and sends
a trivial email about these events.