Reworked sets so that class constraints are only declared in implementations.