Files are now hashed and potential duplicates shown at end. General tidying up. Wrapped some potentially throwing calls so the whole script doesn't fail when one test does.