Updated implementation of iterator. It now has Queue<E> instead of Queue<Node<E>>. Iterator does an in order traversal collection of all the nodes and then returns them