code: public FeatureSet with(Feature feature) {
      if (features.contains(feature)) {
        return this;
      }
      return new FeatureSet(add(features, feature));
    }
docs: Returns a feature set combining all the features from {@code this} and {@code feature}.