Support git-format-patch format in diff parser
Summary:
Fixes T4063. The git format-patch command produces a special header
and footer which we need to detect, strip, and parse.
Test Plan:
- Added and ran unit tests.
- Submitted a diff with git format-patch HEAD^ --stdout | arc diff --raw.
Reviewers: btrahan
Reviewed By: btrahan
Subscribers: epriestley
Maniphest Tasks: T4063
Differential Revision: https://secure.phabricator.com/D8547