InMemorySagaPersister overwrites changes with stale data

There's checks in `InMemorySagaPersister` to ensure that reads after a write fail if the read has stale data, but the checks only work if the read and writes occur on different threads.

If they occur on the same thread then it's possible to overwrite changed data.

Not sure how much of a priority this is as we shouldn't be using InMemorySagaPersister in a production environment. Right?