Implementation of `EventStore.Add`

TODO: Write tests for this.
Minor: Moving code chunk

Putting it close to `EventStore.Query` where is makes more sense.
Minor: Comment for code structuring
Implementation of helper type `eventStoreKey`

The type contains helper methods for parsing etc.

The goal is to migrate some of the already written code to use this
datastructure. It will make the code easier to read/understand and more
maintainable.

TODO: Write tests for this.
`EventIdGenerator` now supports an init value

I might have to revisit this, since I think every stream wil need an
eventIdGenerator.

TODO: Write tests for this.
Implementation of `EventStore.Query`

TODO: No tests have been written for this. They are coming.
Minor: Name change: compareTest => comparatorTest
(De)serialization tests for eventStoreKey

Since the project currently does not compile, these tests have not been
executed.