Add Predis support

As I've mentioned on Reddit a few days ago, this PR adds support for the Predis library.

Unit tests are passing, but this was a very quick attempt so let me know if there is anything missing and I'll amend the PR.

Thanks!

*Edit:* Travis fails since it can't locate Predis. Seems it can be fixed by updating travis.yml but I don't know how to do it.
@rybakit By the way, if I remove the implicit serialization, the unit tests fail as passing `array` and `stdClass` fails.

So we either have to pass in a serializer interface, or do it implicitly. Thoughts?