Move subscription between timeslots atomically

This is for signup sheets that restrict to maximum one time slot per
person.