shamend: pass -a to git and default to HEAD

Two changes I made to git-shamend that I found useful:
 - recognize and pass on '-a' flag to git so you don't (necessarily) have to
   stage your changes if you just want to shamend everything
 - if no rev is passed, default to HEAD and just use git's --amend --no-edit
   flags rather than doing the stash/commit/rebase/unstash dance

Motivation: I have 'cm' aliased to shamend and I found it silly that I was now
doing more typing to amend HEAD than I was to amend some further-back commit.