Improve haddocks for pattern synonyms
This MR addresses #26252 (closed) by being more careful about existential variables when generating documentation for pattern synonyms. It also improves the general logic for deciding whether to print type variable kinds in foralls.
Edited by sheaf