CQRS, Command and Query Responsibility Segregation