merge in some emacs git-wip-mode updates from robertkrimen
change default: untracked changes are added unless -t / --only-tracked is specified
More robust .git/* editing detection
Emacs 23.4.1 returns symbols from `vc-backend`, not strings.

`(vc-backend)` is the symbol `GIT` in some versions of Emacs.  Rather than
just comparing it with the fixed case string, case-fold it for comparison.

This makes the detection of the back-end much more robust - extracting the
logic to determine if the buffer is managed by git, then using that in all the
hooks.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Invoke `git-wip` through git magic, not directly.

In modern git installations, most of the `git-whatever` commands are hidden
well away from the user - and so are the support components like the shell
setup libraries and so forth.

That means that invoking `git-wip` directly fails, but `git wip` will do
exactly the right thing.  Since the cost of invoking it that way is low, we
might as well...

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Use the right branch in `git wip log` error message.

A copy-and-paste error would output the wrong branch when there are no commits
found.
Merge next into master.