Moved interface to it's own class.  Added filter to additional iterators