Persistence:
  git(): return with warning if not use_git
  git_checkout(): aborts if dirty tree
  state_changed(): fix error caused by git_diff invocation
     "git diff State.json" was causing git to complain
     when State.json was deleted. use "git diff" instead.
throw(): use pager3()
pager3(): chomp and say @_
commands.yml: branch: fix parameters field
Persistence:
   warn on git command and bail without executing if use_git not enabled
   (will this bite me?)
   git_creat_branch() works (fixes new_branch command)
grammar_body.pl: fix branch and newbranch commands
 Persistence: git_commit(): record commit message
commands: update save_state, get_state docs for git
modified:   grammar_body.pl
  branch: nicer output format
  new_branch: command
  save_state: allows commit message