Unification over all possible 'a cp: contains the main methods of 'a cp except the methods using the type 'a.
'a cp
'a
A type used to specialize polymorphics classes and define new classes.