Adds support for git repositories

This adds support for git repositories. use-package will clone and then pull repositories on a weekly (configurable) basis. Good for living on the bleeding edge, but not too bleeding.

Git interaction happens synchronously, so obviously blocks emacs load in the process. This could be made lazy or asynchronous but this is going to introduce a lot of concurrency into the load process which is probably not sensible.

If git pull's fail, then it carries on regardless; so lack of network access shouldn't stop use of Emacs!