Represent capabilities as sealed interface hierarchies