Added the saved file's path to onSave methods.
Fixed bug with large list that caused the size to be too large.
Renamed LargeList to LargeCollection and ListOutput to CollectionOutput.
Refactored and generalized interfaces to interfaces.php.
Changed FileIterator so closeOnEnd and readLength are set as options in the constructor, and added a unserialize option that tells the iterator to unserialize lines that are read.
Removed unused code from LargeCollection.
Added MultiFileSorter to iterate over individually sorted temp files.
Changed the interfaces to make IO more generalized.
Added number formatting to messages.
Changed the report file lookup.dat to dirmap_lookup.dat.
Added a message for the time it took to finish off the directory list files, and adjusted the complete message.
Added rewind, seek and seekToEnd methods to FileStream.
Changed FileIterator so it can rewind.
Small fixes to Util methods.
Added renameTo method to the CollectionIO interface.
Added unlink method to FileStream.
Added "unlinkOnEnd" option to FileIterator.
Fixed issue with FileIterator's rewind where foreach would cause the first line to be read twice.
Changed LargeCollection so it limits the number of files it has open by compacting temp files before the final iteration. Also changed it so temp files have their own size limit.
Debugging code adjustments.