Diff formatter

Summary: Adds the option --diff to the formatter.
Typical usage: hg diff | hh_format --diff

hh_format --diff takes a diff on stdin and reformats the parts of the files
that have changed (in place).

There are cases where the formatter can affect more lines than the ones
that appeared in the diff.
Let's consider this diff:

   $x = array(
  -  1,
  +  23,
     3
   );

The formatter will consider the entire statement as an indivisible block.
In other words, it's going to reformat the entire statement; despite the
fact that only one line within that statement was modified in the diff.

Reviewed By: @elgenie

Differential Revision: D1450288