Class-def associates a class name with a class description
A class-def consists of following components:
type: either primitive or defined; default is primitive, its definition is taken to be a necessary but not sufficient condition.
subclass-of: a list of one or more class-expression.
slot-constraint: a list of zero or more slot-constraints; each slot-constraint defines a class.