Update git.el and git-blame.el

Updated from the latest master git commit
Update magit and its dependences

Updates magit to the latest version available from GitHub, and also adds
the git-modes external on which magit now depends.

This commit also conditionally includes a backport of Emacs 24's cl-lib,
which is added to the load path for Emacs version 23 or earlier; this too
is required by magit.