Minimax implementation with AB pruning. Demonstrated as the AI opponent for a game of Naughts and Crosses