Support new role annotation syntax.

This reverts the change to TyVarBndr (which now has only two
constructors, PlainTV and KindedTV) and adds a new Dec, RoleAnnotD.
There is also an updated definition for the type Role, to allow
for wildcard annotations.
Trailing whitespaces
Follow changes in comparison primops (see #6135)