Interfaces and generic implementations of domain concerns.