Fix :Git! on Windows.

Closes #301, #302.
Unify escaping rules for :Gedit with :edit

In particular, this makes `:Gedit file\ with\ spaces` work, and updates
the tab complete to match.

Closes #305.
Work around archaic encodings

Closes #304.
Add foldlevel to fugitive_diff_restore
Expose detect interface

Closes #311.
Seek to blob name in tree with -
Include tree filename in <C-R><C-G>
Change cp to cP

This has the incredibly self-serving purpose of paving the way for
evaluating Clojure in historical buffers.
Add . to prepopulate command line with revision
Don't dispatch autocommands when calling git commit

Closes #295.