lexer: Ignore initial UTF-8 BOM, and handle eof in lexKeywordOrIdent.