Also, use systemd timers. Most of the work is by @thoughtpolice but I changed enough of it to warrant changing commit author.
[Squashed commits to make git blame etc. more likely to work. -ED]