# File lib/libttc.rb, line 323
  def initialize(move, player, pieces)
    @move = move
    @player = player
    @pieces_after_move = Hash.new
    pieces.each {|k, p| @pieces_after_move[k] = p.dup}
    @pieces_after_move.each_value {|p| p.contains = []}
    # and now to make the captured pieces point to the copies
    pieces.each do |k, p|
      p.contains.each do |captured_piece|
        @pieces_after_move[k].capture(@pieces_after_move[captured_piece.name])
      end
    end
  end