mq: really remove undo after a qpush (and after a strip)
For qpush, removeundo has to be called after the transaction has finished.
strip may use unbundle, which also leaves an undo file.
Fixes issue780.
#!/bin/sh
hg init
echo a > a
hg ci -Am t
hg mv a b
hg ci -Am t1
hg debugrename b
hg mv b a
hg ci -Am t2
hg debugrename a
echo % test with --rev
hg debugrename --rev 1 b