Added an iterator. (Implemented from scratch.)