refactor plcmp, restructure lexical analyzer, fix bag with lexical analyzer error message