SORT command

Implemented SORT command in a new way (using a zval array to construct
each argument, then creating the command from that), as well as updated
Redis proper and RedisCluster to use it.
ZRANGEBYSCORE/ZREVRANGEBYSCORE

Implemented ZRANGEBYSCORE and ZREVRANGEBYSCORE in the new way for
both Redis and RedisCluster objects.  In addition, ZRANGE and
ZREVRANGE handling is nearly identical to "BYSCORE" variants, so
made this generic.
ZUNIONSTORE/ZINTERSTORE

Implemented ZUNIONSTORE and ZINTERSTORE in a generic way that
works for both cluster and Redis proper.
Added command generic, LPUSH/RPUSH

Added a generic command routine where we take a key and then a
variable number of arguments.  This works for stuff like LPUSH,
RPUSH, SADD, SREM, and the like...

Implemented LPUSH/RPUSH
SADD/SREM

Implemented SADD and SREM for both Redis proper and cluster
ZREM

Added ZREM for both cluster and redis proper
HDEL command

Implemented HDEL command for both Redis and RedisCluster objects
ZADD command

Implemented ZADD command for both Redis and RedisCluster
OBJECT command

Implemented the OBJECT command for both Redis and Redis Cluster
Reworked generic_multiple_args command, DEL

Implemented a new version of generic_multiple_args_command which
is slightly simpler, avoiding trying to do everything (including
different commands with keys, or keys/values) and only operating
on keys.  The other methods have been implemented differently.

Implemented DEL for Redis proper.  Cluster DEL will need to be
a special kind of command where the client splits the request
to various nodes.
WATCH command, formatting
Fix memory leak, inc arg count

Properly free allocated z_args array, as well as increment
our argc value in the case of a single array + timeout command.
Implemented set aggregation methods for Redis and Cluster

Implemented the various set aggregation functions and store
variations for both Redis and RedisCluster in a generic way.

* SUNION
* SUNIONSTORE
* SINTER
* SINTERSTORE
* SDIFF
* SDIFFSTORE
Remove the old generic_multiple_arg_command function.

This function isn't needed anymore, as it's been split into a
couple different functions to avoid doing everything in one
place with lots of checks/variations.
Spaces > tabs :)
80 chars is the future :)