Added BNFParser and test case.