Bug fixing on epsilon. Discovered that typeOf does conversion checks, such that any call to typeOf on a term with a recursive reference fails, because the type inferred by the check function does not match the type in the environment. Making the type of the term match the type in the environment is exactly the job of epsilon, so maybe it cannot rely as heavily on inferred type information as is currently the case.