Lots of work on locations in the parser
Everything compiles