Merge pull request #1 from dplummer/master

Ruby 1.8.7 compatibility
Bumping version to 1.1.2
Memoizing sentinel client prevents leaking conns

Before, a new connection would be established to the sentinel each time
you tried to discover master and then it leaked. If you are doing that a
lot, it results in an error Errno::EMFILE too many open files.

This code lazily caches the sentinel connections as they are needed.
Add options for failover reconnect timeout

Adds the :failover_reconnect_timeout and :failover_reconnect_wait
options. If configured, the client will block for up to the timeout
time. This prevents the Redis::CannotConnectError from raising into the
main application for a finite amount of time.
Ensure sentinel configs are present

If you mess up and get a blank sentinels configuration array, you
probably don't want to accidentally connect to your local redis server.
Merge branch 'ensure-sentinel-configs-present'