a simpler design for EventStore

@mathiasverraes Maybe a good place for a generator?