almost done adding let forms to the language, made sure to throw exceptions in most places