a recursive-descent parser generator based on Ian Piumarta's peg/leg, re-entrant thanks to _why, and with better error-reporting features