forEachUntil
fun <T : Any> FeatureSet<T>.forEachUntil(block: FeatureSet<T>.(ref: FeatureRef<T, *>, feature: Feature<T>) -> Boolean)
Recursively search for feature until function returns true
Recursively search for feature until function returns true