Stage 1 compiles
Check for Coercible *before* checking for classes
kicking out really only cares about the flavour
Check validity of EqPred ReprEq correctly