Rec1: first stab at a new typechecker