Fixed an obscure bug with the McmcCombinationMoves, which won't have
affected the results so far, but could cause issues in the future.

Previously if the move was rejected it might restore to an intermediate
state. However, since all of the combination moves we have used so far
have orthogonal proposal kernels, the only difference this made was via
an extra Funcs.sampleVertex(tree) call inside AlignmentMove.proposal().
i.e. the trajectories look different, but the posterior will not have
been effected. Still good to fix this now though, because if
non-orthogonal proposals are used (e.g. edges and topologies), then we
want to restore to the state preceding all proposals, not just the
previous proposal.