DATAREDIS-288 - Improved support for collection parameters in ListOperations.

Added additional leftPushAll and rightPushAll method overloads that accept a Collection parameter.
Previously we only accepted varargs which required users to convert collections to arrays.

Based on David Liu's pull request: #100.

Original pull request: #114.
DATAREDIS-288 - Polishing.

Added javadoc and assertions to ensure failing before actually sending data to redis and backed those with tests.

Original pull request: #114.