[design-patterns] What's an Aggregate Root?