Use shutil.move rather than os.rename to prevent errors like invalid
cross-device links.

These can occur under specific circumstances in clustered environments.
Merge pull request #330 from lbeltrame/use-shutil-for-rename

Use shutil.move rather than os.rename to prevent errors like invalid cross-device links