Re-wrote LineFilter as FilteredLineIterator

LineFilter was clunky and inflexible. FilteredLineIterator is not.  No
one is using this yet, so I've taken the liberty to just re-write it.
When people start using this, things will be deprecated and retired over
time.