Making valid move causes board swap and state change
MakeMove logic and MakePrognosis logic separated