Moved turn evaluation out of BoardState, created TurnIterator