Introduce event sourcing