Basic implementation with event sourcing working