Which superset of PurePy a caller opted in to.
A sorted set, because that is how the rest of this codebase gets a
deterministic order out of a set: features iterates it, and what
pure-py profiles prints has to be the same twice.
The field is readable, as every pub struct in this library is, but there
is no way to CONSTRUCT one except from core by adding. That is the
property worth having: a Profile is always a superset of PurePy, never a
subset, and no caller can spell one that takes something away.
Eq is derived because "did the caller ask for the same language I did?"
is a fair question; Debug because a failing test should be able to say
which profile it had. adding rather than with only because with is a
keyword.