Somewhat big commit:
  1. Fixed two lexer bugs, add made sure we test those cases
  2. Parser progress: parse vars, produce decent error messages