Updated Type Checker to use lenses