Note: This issue depends on #6 being done first.
Currently which snapshots will be deleted on schedule is determined dynamically, based on the rules given the config rules (e.g. keep_hourly = ..., keep_daily = ..., etc.).
We should allow this to be determined at creation time instead, and assign a TTL. The main advantage will be
The feature must maintain back-compatibility. I.e. should gracefully handle existing snaps, also provide the option to follow current logic for those who want it. We can add a new config item, enable_ttl_based_cleanup = true. If set to true, all new scheduled snaps will get assigned a TTL based on the keep_... rules.