fixed #1464 - change so persistence dir is only backed up if node is HA ...

...master or HA disabled; handles the case of HA autodetect selecting master hence the complexity.

also fixes some leaks in test and improves atomic file update support in FileBasedObjectStore.
(incorporates new logging from #1469)
`Files.move` does a stream-based copy followed by delete.  If it is aborted or read prematurely the destination will be partially formed.

The issue with the code here is that -- if both file-system `mv` and `rename` fail, then we have no way to guarantee the destination is updated atomically and we may be left with a broken on-disk memento.  (Note we do `delete` then `rename` for speed.  I've changed it so that if *that* fails, which may be the case e.g. if they are different volumes, then we try one last thing which is `Files.copy`.  But both of those are non-atomic.)

Also note Java 7 introduces atomic FS operations out of the box.