Doc fix: PrattParser needs a lexer with an each method, not a next method.
Put the PrattEvaluator lexer in a new Lexer class.
New method PrattParser#if? to support parsing things like
"if ... then ... [else ...] end", where "else" is optional.