Made BfLexer a class and recoded some of bflexergen.py to match