NiceIterator is the standard base class implementing ExtendedIterator. It provides
the static methods for andThen, filterKeep and
filterDrop; these can be reused from any other class. It defines
equivalent instance methods for descendants and to satisfy ExtendedIterator.