improved Lexer errors

closes #38