Properly monitor thread to abort in case of insanity
Use os.walk instead of recursion which runs a zillion of time much faster, as it scans sequentially. Also deduplicate folders.
ST2 Quirks