Redis SELECT on connect

This is an improvement upon pull request #217. Some of the source here is based on this pull request.
We have tested this working on FreeBSD 10 (live traffic), Mac OS X (local dev) and Linux (virtual machine).

Improvements over #217:
- The select command is pushed to the standard server message queue
- This removes the need to check for the response (already done by existing code)
- The time and ownership of the response is now clear, too
- Works on OS X and FreeBSD 10 (which blocked connections with the original patch)

You can add an option "redis_db" to the configuration file to use this patch.
All servers in a pool will select the same database so consistent hashing is possible.
The select command is still not allowed during "normal" runtime as this would lead to confusion.

To compile on FreeBSD10 pull request #293 is required.
since this only affects redis, can we have two init handlers for memcache (memcache_conn_init) and redis (redis_conn_init) and move the code from server_conn_init to redis_conn_init