The cursor position is now set by the lexer, whenever a token is read.
Added a safety debug check to assert that operator identifiers are unique.