Moved attributes from descriptor to base_descriptor

All attributes of a class which can be different in the private and
the public view of a class must be in the base descriptor. The specific
moved attributes are

    fmap
    def_features, eff_feature
    def_asserts,  eff_asserts
    descendants

	modified:   ocaml/class_table.ml
Created a base descriptor in the feature table

The base descriptor holds

    - the variants
    - the seeds
    - the optional definition term

There is one base descriptor for the private view and an optional
for the public view. With this the public and private view can be
kept separate.

	modified:   ocaml/feature_table.ml