i was joking before, now scoping is actually in there
sexprs have smaller sexprs in them
merged the semantic check in and the new sast