KeyboardPlayer can promote pawns..and wrote constructor for Move struct.