Experimental completion-aware lexer and parser.

Subject to change...