Add a Iterator pattern and a unit test for it.