Fix: Signatures not properly adapted to formal generics

The signature of a found identifier or feature name has to be adapted
properly if the environment where it is used and the environment
where it has been found have a different number of formal generics
(which are treated as type constants) and a different number of
type variables.

	modified:   ocaml/context.ml
	modified:   ocaml/signature.ml
	modified:   ocaml/typer.ml