We need tab completion

Pressing the TAB key should do the right thing. It should complete
filenames, `\` commands, branch names, and so on. In general:

* If the command starts with `\`, complete a backslash command;
* If the command starts with anything else, complete a `git` command.

(I've been thinking this but kept forgetting to write it down.)