Add lexer and parser generated from BNFC
modify .gitignore