We now use the file iterator to ensure that the creation of file objects
by the plug-ins doesn't cause any unnecessary disk I/O.
All use of listFiles() has now been replaced with file iterators that
cache the results.