Restore this Board object to match the properties and state of the given Board object
        :param board: properties to restore to the current (self) Board

def restore(self, board):
        """
        Restore this Board object to match the properties and state of the given Board object
        :param board: properties to restore to the current (self) Board
        """
        self.tiles = board.tiles
        self.ports = board.ports

        self.state = board.state
        self.state.board = self

        self.pieces = board.pieces
        self.opts = board.opts
        self.observers = board.observers

        self.notify_observers()