Testing performance of entity persistence
Covert perf tests from groovy to java
FileBasedObjectStore.put: try rename before mv

- system call for `mv` is *very* expensive (about 20ms on my machine),
  and CPU intensive, versus `file.rename` which is < 1ms.
- This change therefore allows us to persist 1000s of entities per
  second, rather than < 50 (because done single-threaded currently).
This closes #10