(maint) Update branch strategy to be the git flow process

Without this patch it's still a bit confusing how to deal with a bug fix
that is merged into stable.  The merge up process documented in
COMMITTERS requires us to reset the stable branch on a new release.

We can avoid this reset if we switch fully to the process described by
[git flow](http://nvie.com/posts/a-successful-git-branching-model/).
The major difference described in this commit is that bug fixes are
reset onto stable, then merged as-is into both `stable` and `master`
without a merge-up of stable into master or a rebase of the change set
back onto master.

This process avoids the reset, allows both `stable` and `master` to have
infinite lifetimes, and keeps the history clean and free of duplicate
commits.

[ci skip]
Merge branch 'jeffmccune-git_flow'

* jeffmccune-git_flow:
  (maint) Update branch strategy to be the git flow process

closes #1604
[ci skip]