add /commits page, with simple highlighting

This is theoretically the start of some richer, web-based ways of interacting with your local git repository.

Example screen:

![](http://f.cl.ly/items/1Q2r3E3Z3b3j280L0w2U/Screen%20Shot%202014-09-20%20at%203.19.06%20AM.png)

open questions:
* do I need to declare the new py deps, `json` and `pygit2` (which depends on `libgit2`) somewhere?
    * `pip install cffi libgit2 pygit2 json` should do work.
I don't think that's true. If I change this to `render_template("commits.html", commits=commits)` and then do `console.log({{commits}})` in `commits.html`, they show up like:

![](http://f.cl.ly/items/2H3W170p2p3I2D1Z0533/Screen%20Shot%202014-09-21%20at%202.12.47%20PM.png)

which doesn't parse. If I try saying `{{commits|tojson}}` in jinja, I get a server-side error:

`TypeError: <_pygit2.Commit object at 0x10a906f90> is not JSON serializable`