Add diffstat on magit-commit-mode and magit-diff-mode

When a commit has lots of files, it would be difficult to get the overview of the commit, although we can control the output of the *magit-commit* and *magit-diff* buffer by using `magit-show-level-1` and so on.

This branch will includes support for `git log --stat` and `git diff --patch-with-stat` commands. so the either commit log or diff log will contains section like:

    7 files changed, 87 insertions(+), 136 deletions(-)
     pom.xml                                         |    9 +--
     src/main/java/com/mycompany/rest/Follow.java    |    6 -
     src/main/java/com/mycompany/rest/Pins.java      |  107 +++++++++-----------
     src/main/java/com/mycompany/rest/Upload.java    |   11 +--
     .../java/com/mycompany/rest/UserBoards.java     |   54 ++++------
     src/main/java/com/mycompany/rest/UserPins.java  |    6 -
     src/main/java/com/mycompany/rest/Users.java     |   30 ++----


- Section nagivation commands works properly (e.g. `p`, `n', `M-p`, `M-n`, etc.)
- `RET` will visit the file using `magit-visit-item`,
- `e` will invoke `magit-ediff`.
- `M-g` will move points to the diffstat headers.

There is minor problem (on restoring window-configuration); when the user press `e` at the diffstat line, the code will move the point to the actual diff section line, and will invoke `magit-ediff`.  When the user quit *ediff*, the point is at the actual diff section line, not the diffstat line.

Tested on
- Emacs 23.3.1 on Ubuntu Linux,
- Emacs 24.2.1 on Gentoo Linux,
- [Emacs 24.2 on MacOSX](http://emacsformacosx.com/)