Improvements to commit-mode

Hi,

I just started looking at your version of git-commit-mode.el.  Here's a small start from my end:

[1/4] is a small cosmetic change.
I start looking at the code in [2/4].
I decide that the logic needs a rewrite: [3/4] and [4/4].

Thanks.