Reworked suppression support

Parsing expressions keep track of the previous parsing expression during
recursive descent. This enables StrMatch to mark terminal for
suppression if called from Sequence.