More-or-less completed everything, sans the LetRec function
Working on the type annotation
Cleaning up all the shiz