Access to the underlying set implementation lets users call
methods like find, if the set implementation supports them.
See D17884 (DIImportedEntitys) for an example of when this might be
important -- need to keep a unique set, but also need the order to be
deterministic.
Switching from DenseSet to SetVector, even if the underlying set
implementation is DenseSet, isn't possible since the caller can't
check to see if the key has already been added without access to the
underlying set.