Fix for 15671

Snapshot files were being retrieved based on the persistenceId appearing in the *start* of their filenames.

Changed this to break down the filename, extract the full persistenceId in it, and compare for equality. I've tested this locally and it seems to work. There were no suitable unit tests to update, that I could see.
Yeap, but instead of "magic drops" let's use the FilenamePattern from line 27:

```
private val FilenamePattern = """^snapshot-(.+)-(\d+)-(\d+)""".r
```

if you would pattern match on the `name` here like on line 109 in this file it would be much less error prone.