improved variable liveness check
lexer now skips single-line / multi-line comments