refactoring BNFReader - externalized constants