determinism: WithHsDocIdentifiers contains non-deterministicly ordered list of names
`WithHsDocIdentifiers` is defined as
```
71 data WithHsDocIdentifiers a pass = WithHsDocIdentifiers
72 { hsDocString :: !a
73 , hsDocIdentifiers :: ![Located (IdP pass)]
74 }
```
This list of names is populated from `rnHsDocIdentifiers`, which calls `lookupGRE`, which calls `lookupOccEnv_AllNameSpaces`, which calls `nonDetEltsUFM` and returns the results in an order depending on uniques.
Then the list is placed directly into the interface.
```
88 instance Binary a => Binary (WithHsDocIdentifiers a GhcRn) where
89 put_ bh (WithHsDocIdentifiers s ids) = do
90 put_ bh s
91 put_ bh $ BinLocated <$> ids
92 get bh =
93 liftA2 WithHsDocIdentifiers (get bh) (fmap unBinLocated <$> get bh)
```
One solution would be to sort it before putting it into an interface file to maintain determinism.
issue