WIP: adding event sourcing