Expansion of function definitions implemented

Functions in terms can be replaced by their definitions (i.e. lambda terms
are inserted as the functions). The term_to_string function has been
completed to allow the printing of lambda terms. However the types of
the lambda terms are still missing.

Reduction of lambda terms is not yet implemented.

	modified:   ocaml/assertion_table.ml
	modified:   ocaml/container.ml
	modified:   ocaml/feature_table.ml
	modified:   ocaml/feature_table.mli
	modified:   ocaml/term.ml