making board a struct and adding state
adding undo
adding o winning game
fixing winning combination
adding ai
showing gameover message
fixing negamax algorithm