diff: add --stat for diffstat output
diff/qdiff --stat invokes patch.diffstat() on the diff output.
When in interactive mode, the output's maximum width is determined by the
terminal's width.
% convert while testing all possible outputs
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% check tags are in UTF-8
'1c1b4062874e8197a68e7ce9e498479a37d0215c branch\xc3\xa9e\n'
'edc96568720ef79eefa6372677b18d855de3abee branch\xc3\xa9\n'