Organize the rbt post --help output.

rbt post has a lot of options, and it was hard to figure out which
options were intended to serve which purposes, unless you knew what you
were looking for.

This organizes all the options into groups. To do this, I've implemented
a custom OptionGroup class that just wraps optparse's OptionGroup.
Commands can use this to group instances of our Option class under a
name and optional description.

The options are divided into the following groups:

* Posting Options
* Review Board Server Options
* Repository Options
* Review Request Field Options
* Diff Generation Options
* Git Options
* Perforce Options
* Subversion Options