Delete branches more sanely

Rather than delete any peer branch that is merged to HEAD (the behavior of git
branch -d), we delete any peer branch where the local branch is a fast-forward
commit or equivalent commit.