implemented breadth first, and begun iterative deepening