Initial commit of HyperLogLog commands

This is the initial commit of the HyperLogLog probabilistic counting
command introduced in Redis.

Support for the following commands is implemented

  * PFADD <key> <member1> <member2> ... <memberN>
  * PFCOUNT <key>
  * PFMERGE <dstkey> <srckey1> <srckey2> ... <srckeyN>
Fix an invalid free in _serialize

If serialization isn't on, and you call _serialize with a string,
the string is not copied at all, so we don't need to STR_FREE it
Add an additional test function to test.php
Use efree on a zval, not STR_FREE() :)
Calculate the proper minimum argc.  :)
Fixed missing "~~~" before "_userialize"

My OCD compelled me to fix this, it was just a missing "~~~" right after the "_serialize" examples, nothing fancy, it just really hurt to see all the markdown messed up :)
SAVE and BGSAVE are distrubte commands

SAVE and BGSAVE need to be passed through multihost_distribute

Refs #472
Merge branch 'feature/hyperloglog' into develop
Removed deprecated functions, implemented expires

Removed redis_atomic_increment, and generic_expire_command

Added EXPIRE/EXPIREAT/PEXPIRE/PEXPIREAT
APPEND command
Updated MOVE in Redis proper

Updated move command in redis proper to use the new calling
method, but didn't implement in cluster as it's not allowed
Updated INCRBYFLOAT in Redis proper to use new convention
Rework naming convention for command construction
GETRANGE/LRANGE/LTRIM/ZREMRANGEBYRANK
HEXISTS/HGETALL

Also removed deprecated generic functions in Redis proper
PUBLISH command
More commands, updated redis proper to use generics

* Make key, long val generic
* Update lset to use new style
* Added PUBLISH commnad
Actually only hash the bits between { and }
RENAME, RENAMENX

For now we're pre-processing each key to determine if they all live
in the same place.  This might change for commands that could take
very large numbers of keys
Reformatting of command code, RPOPLPUSH/BRPOPLPUSH

Reorganized redis_commands.h and redis_commands.c to put the generics
first, and the specific command construction at the end.