made a lot of progress but it's buggy as hell now. Implementing searching
the move tree and maximizing the evaluate() function
but now there are all sorts of weird behaviors