Switched Arraylist to Iterator

Changed getPossibleStates() to return an iterator instead of an
arraylist and changed getBestMove() to use that iterator