string2* functions take a const pointer
Encode small hashes with a ziplist
Implements ziplistFind

To improve the performance of the ziplist implementation, some
functions have been converted to macros to avoid unnecessary stack
movement and duplicate variable assignments.
Test that zipmap from RDB is correctly converted
Update default configuration
Lua_cmsgpack added to Redis scripting.
lua_cmsgpack.c added
fix redis-benchmark memory leak
use gcc sync builtins for memory counter when possible
Fix the build on Mac OS X, where features.h is non-existent
Merge pull request #362 from fawek/mac-build-fix

Fix the build on Mac OS X, where features.h is non-existent
Added command propagation API.
Var renamed into pushGenericCommand() to better reflect what it means.
propagate() prototype added to redis.h
Added a new API to replicate an additional command after the replication of the currently executed command, in order to propagte the LPUSH originating from RPOPLPUSH and indirectly by BRPOPLPUSH.
Better system for additional commands replication.

The new code uses a more generic data structure to describe redis operations.
The new design allows for multiple alsoPropagate() calls within the scope of a
single command, that is useful in different contexts. For instance there
when there are multiple clients doing BRPOPLPUSH against the same list,
and a variadic LPUSH is performed against this list, the blocked clients
will both be served, and we should correctly replicate multiple LPUSH
commands after the replication of the current command.
Version bumped to 2.9.5
lpush arguments vector rewrite modified for more speed and to memory leak removal.
Better implementation for BRPOP/BLPOP in the non blocking case.
Ping the slave using the standard protocol instead of the inline one.