DATAREDIS-290 - Add support for SCAN command.

`SCAN` is currently only supported by `jedis` but can be emulated for `lettuce` via eval.
`Srp` and `JRedis` will respond with `UnsupportedOperationException`.

We provide a `Cursor` implementation allowing to scroll through the responses provided by the underlying connection. The cursor will fetch additional results from redis server whenever its starting point has not been reached and there are no more already loaded items available.

Only values returned by the last call to redis server are kept in memory which allows scrolling through the entire collection without potentially running into memory issues.