  FugitiveMove t -> MultiSet.delete t ft
  Reveal t _ -> MultiSet.delete t ft
  DoubleMove move1 move2 ->
    applyMoveFugitiveTickets move2 (applyMoveFugitiveTickets move1 ft)

applyMoveDoubles :: Move -> Int -> Int
applyMoveDoubles (DoubleMove m1 m2) dm =
    applyMoveDoubles m2 (applyMoveDoubles m1 (dm-1))
applyMoveDoubles _ dm = dm