Have the file iter return a structseq rather than a name
Switch to _iterfile for consistency
Working (although without tests): an iterator version returning a named tuple
Refactor & Tidy-up

Pick up a few PEP7/8 non-conformities
Move the findfirst/next logic entirely into the iternext logic: the iterfile function simply creates the iterator for the requested pattern and indicates that no iteration has yet occurred.