Refactor, post-with-score, diff, start testing

* A bit of a refactor.
* Added the option of setting the message to '-' indicating you truly
  want no message.
* Added post-with-score, meaning 'git fgerrit post +2' will assume
  you meant 'git fgerrit +2'.
* Made arg_encode to fix up some bugs there.
* Show [DRAFT] for said patches
* Added new "diff" command