Handle interrupted backups nicely

If `rsync` exits non-zero, we rename its interrupted backup directory and skip
updating the pointer to the current backup.

This prevents the case where the backup is interrupted (say, by the user), but
the pointer is still moved forward despite the thing its pointing to not having
all the files.