Scenarios in Mitten
A scenario in Mitten describes which messages are allowed by a sequence (or any other combination) of steps.
Each message is pattern matched with the current step of the scenario to decide if it should go through or not. Messages that are matched are forwarded, and messages which are not matched are discarded (but can be reconsidered later on).
Steps can contain variables, constants, and catch-all patterns.