Fixed world saving breaking forever if a single world save ever fails e.g. due
to a permission or disk space error.

Optimised the save routine to use File.Delete + 2 x File.Move's instead of
2 x File.Copy's. This reduces the number of bytes written to disks by world
size x 2 and eliminates all disk reads in this code path.