patchbomb: make `hg email` reusable for other patch sources
Adds two internal options, patches and patchnames, which allow other extensions
to email a given set of patches. The pbranch extension needs this to send its
patches which are diffs between topic branches.
# should print nothing
# should fail
abort: path 'b/x' is inside repo 'b'
abort: path 'b/x' is inside repo 'b'
# should fail
abort: path 'b/x' is inside repo 'b'
# should arguably print nothing
# should fail
abort: path 'b/a' is inside repo 'b'