Handle rescue pushes that overshoot consensus ref

User commits and pushes to a home server. Piehole updates the ref in
etcd but the home server is hit by a meteor before the replication can
complete.  No problem, user is able to escape with laptop intact, get
online at a coffeehouse, and push to one of the other servers, on a VPS.
All well except that the user made more commits at the coffeehouse
before doing the push.

    Before: home at A, etcd at A
    Push: home at B, etcd at B
    Meteor!  Home is gone.
    Push to VPS: repo at A, etcd at B, user pushes C
      old: A
      new: C
      current: B

Push fails.  But at this point we should have the needed objects to move
the vps repo to B.  So do it, and next push will probably succeed.