Only rename files which aren't already lowercase and use an atomar renaming
without a temporary file. Both changes should speed up the renaming and the
atomar renaming should avoid dataloss when aborting tolower during renaming.
Merge pull request #53 from Dunedan/tolower-improvements

Optimisations to tolower