DATAREDIS-243 - Ensure compatibility with Spring Framework 4.0.

Updated dependency of XStream since Spring framework 4.0 requires a newer version.
Spring 4 added another method to get cached object to the Cache interface. The method has been added to RedisCache in order to provide compatibility, while calling get internally and casting values to required type.
DATAREDIS-249 - Improve logging for tests in Gradle build.

Changed exceptionFormat to full in order to get more detail StackTrace information for exceptions during test execution.
DATAREDIS-245 - Prevent Excessive Thread creation in tests.

Due to some missing cleanup procedures excessive thread creation lead to JVM crashes during a full test run on some machines.
Improved test harness in order to properly shutdown unused threads.
Rewritten testPubSubWithNamedChannels in order to make it pass reliably by keeping the original test semantics.
Rewritten testPubSubWithPatterns in order to make it pass reliably by keeping the original test semantics.
DATAREDIS-251 - Fix tests to work against Redis 2.8.x.

Since Redis 2.8.x keyOps#getExpire() returns -2 for empty collections (RedisList/RedisSet/RedisMap).
We're now adding a dummy entry to keep the test version agnostic. Previously getExpire() returned -1.
We also have to set the RedisAtomic(Integer|Long) to a value other than 0 to get  the value stored appropriately.

For reference see the discussion in http://redis.io/commands/ttl