Create `ClassCommand::Options` class, which ties up sub commands and
default options together.
Let's consider the command `food make --tea`. `food` is a command,
`make` is a sub command and `--tea` is an option of `make` sub command.
We can access `--tea` via `opts[:make][:tea].
Also, we can check the freshness of our food like so: `food --freshness`.
`--freshness` is a default option. We can access it like so:
`opts.freshness?` or `opts[:freshness]`.
Add unit tests for `ClassCommand::Option` and some other tests that
reflect the additions.
Finally, document everything and fix different typos in the existing
documentation.
Signed-off-by: Kyrylo Silin <kyrylosilin@gmail.com>
This is working around (another) brokenness in jruby 1.6.8s splat
handling in ruby 1.9 mode; but I figure that now jruby 1.7 is out,
we can not bother fixing it.