Fixed bug where first cluster (if it was a singlet) was being printed twice.  Also, fixed bug where the last cluster was never being printed.  Finally, reconfigured the code so the logic was sane.
Added comments.
Added back line that's needed to ignore first empty line.