Refactor: Split up the command argument parsing

This changeset spit out the argument parsing from
using a centralized argument parsing, to one where
each operation parse its own argument set. By doing
so it makes it easier for us to change parameters
for _one_ of the commands, instead of having to
figure out the order (and impact) on other commands.

The patch renames the old "argument" class into
Operations and subclass that interface with a
specialized class per operation.

The "dict" style of parameters is dropped in this
commit, since we're going to refactor each of the
operations over to a dict in the future so that
they look like the signature in bucket.js.

Change-Id: I973f9dccd4f74a774a82f1a56cf8696a530fd03e
Reviewed-on: http://review.couchbase.org/23909
Reviewed-by: Matt Ingenthron <matt@couchbase.com>
Reviewed-by: Mark Getz <mark.getz@kellpro.com>
Tested-by: Trond Norbye <trond.norbye@gmail.com>