Provide support for Redis 2.8's SCAN family of commands

SCAN, HSCAN, SSCAN, and ZSCAN have been implemented in the redis gem as:

 - scan(cursor, match: optional_glob_string, count: optional_integer)
 - hscan(key, cursor, match: optional_glob_string, count: optional_integer)
 - sscan(key, cursor, match: optional_glob_string, count: optional_integer)
 - zscan(key, cursor, match: optional_glob_string, count: optional_integer)

Each has been implemented with a helper *_each method that either returns
an enumerator or yields to the given block; support for both has been added.

 - scan_each(match: optional_glob_string, count: optional_integer, &optional_block)
 - hscan_each(key, match: optional_glob_string, count: optional_integer, &optional_block)
 - sscan_each(key, match: optional_glob_string, count: optional_integer, &optional_block)
 - zscan_each(key, match: optional_glob_string, count: optional_integer, &optional_block)

Unfortunately, the tests will be skipped in Travis until a >= 2.7.105 version
of the redis-server is installed.
Merge branch 'feature/support-scan-commands'