rewrite Move.coord
refactor Move.trans