Handle concurrent store copy and logical log pruning

o Previously a FileNotFoundException got thrown when
  master is copying files to a slave and a log rotation happens at the
  same time
o Check logical logs exist before attempting to copy them. If
  they don't exist then it shouldn't matter because they will
  be old ones anyway
o Split up NeoStoreFileListing to return logical logs and
  store files separately. This means there's a double pass of
  the files on FS so will add a benchmark to check this isn't
  detrimental