Correct backup deletion task to respect half-open ranges.

The end_id of each block is the same as the start_id of the next
block. We shouldn't delete it, and trying to do so let to a nice
number of deadlocks, while trying to delete the same row in parallel.
Add a countdown to backup tasks to spread out tasks over time.

The backup tasks are rather heavy and long running. We now spread the
tasks out over time, by default by scheduling the tasks to run in
five minute intervals. This should prevent them from taking over all
async worker processes at a time.