Fixed a bug in the handling of let* and letrec*
Changed to support nested definitions inside of let statements