Previously functions like `class'` and `data'` took their
type variables as `OccNameStr` which let them be passed
as overloaded strings; for example, `data' "Maybe" ["a"] ...`.
Now, they take them as `HsTyVarBndr'`, the same as `forall'`,
and can be constructed with, for example,
`data' "Maybe" [bvar "a"] ...`.
This approach lets them be constructed with either `bvar` (for regular
variables) or `kindedVar` (for kind signatures).
Original patch by ersran9@.