implemented undo for castlings
implemented pawn promotion