mdiff.diffopts: add doc comment for nobinary
mdiff.diffopts: add a new noprefix option

By popular demand, we introduce an option to disable the 'a/' and 'b/'
prefixes in diff output. This makes copying and pasting filenames from diff
output easier.

This option will be implemented and documented in upcoming patches. To ensure
that existing scripts that parse output don't break, we will ensure that this
prefix is disabled in plain mode. A straight 'hg export | hg import' without
HGPLAIN=1 will still be broken though, but there's little that can be done
about that.
patch.diffopts: break get function into if statements

We're going to add another condition here, and with the current structure that
becomes just too confusing.
patch.diffopts: allow a setting to be forced in plain mode

Upcoming patches will add an option that will almost certainly break diff
output parsers when enabled. Add support for forcing an option to something in
plain mode, as a fallback. Options passed in via the CLI are not affected,
though -- it is assumed that any script passing the option in explicitly knows
what it is doing.
patch.diffopts: add support for noprefix

In an upcoming patch we'll enable support as an option to 'hg diff' as well.

The tests reflect the current state of the world -- as we add support we'll see
changes in the test output.
diff: add a --noprefix option

See previous patch descriptions for the motivation.

The tests reflect the current state of the world -- as we add support we'll see
changes in the test output.
mdiff.unidiff: add support for noprefix
patch.trydiff: add support for noprefix