Compound types should be mapped to Representations automatically

Right now: giant hardcoded map from things like set[str | None] to Reprs. This is nonsense and should be mapped dynamically.