tests: add (?) flag for optional lines
When the test engine fails to match output on a line marked with (?),
it will simply continue to the next expected line and try again. This
allows simplifying tests that have either version-specific or
non-fixed behavior, for instance:
$ coin-flip
heads (?)
tails (?)
(There's no form of back-tracking attempted, so optional matches
should be specific.)
{header}
# HG changeset patch
# User {author}
# Date {date|hgdate}
# Node ID {node}
{parent%changesetparent}
{desc}
{diff}