Intermediate commit
More tests

- SnapshotReader is coming along nicely
- Snapshot needs tests, that's obvious
- After that, it's straight to the repo tests
Progress ... I think

- Renamed a lot of the interfaces and test files
- Extracted factories and cleaned up naming of factory methods
- Reduced the amount of new()ing in the tests (still more work todo).
- Added tests for AsyncSnapshotReader, Snapshot
- Detected the need for a better way of hashcoding (need to steal some
NodaTime code)
- Started work on the SnapshotableRepository tests (oh boy)
Nothing important happened here

- More renames
- Removed obsolete SnapshotVersionResolver "stuff"
- Fixed the documentation "complaints" in the build output window.
More tests

- Snapshot repository specific tests (almost there).
Ignore this
Still more tests

- for both a filled event store with and without snapshot.
Wearing the hat of test reviewer
The return of Async

- Started work on the AsyncSnapshotableRepository
Minor fix

Needs testing obviously
Completed AsyncSnapshotableRepo testing