adding the general recursion library.
Refactoring the GenRec library.