In-memory storage of snapshots
Durable storage of snapshots
Factor out id mapping and replay

- replay now done with future instead of actor
Internally stash new messages even if recovery failed
Factor out snapshotting
Replay and snapshot specific exceptions