total rewrite of symbol lexing, which is much cleaner and smaller. Fixes several bugs that were wreaking havoc in later desugaring passes