Make Pred a type synonym of Type (issue #7021)

In order to make any type as a Predicate in Template Haskell, as allowed by ConstraintKinds

Signed-off-by: Richard Eisenberg <eir@cis.upenn.edu>
Change type of equalityT to be more parallel with others.
Add documentation to why Pred has become a type synonym.