many more lexer rules improvements