add phpunit as dev requirement
isntall requirement with a better way
use phpunit 4.x instead of 3.x
Merge branch 'pr170-master'
Enable INCRBYFLOAT in cluster mode
New commands: PFADD, PFCOUNT, PFMERGE (Redis 2.8.9).

Many thanks to @rubensayshi for his initial commits on this in #163,
but I had to start from scratch for the master branch first.
Skip integration tests for HyperLogLog commands on Redis < 2.8.9.

Caught this by running the test suite on TravisCI which still runs an
older version of Redis 2.8. We should find a more decent way to handle
differences in profiles when commands get added between patch releases
of Redis, our custom skip method will do for now.
Added 1.0 branch alias

Let's allow people to install predis using "1.0.x@dev", "~1.0@dev", or any other valid version constraint rather than typing "dev-master" which is really horrible.
Merge remote-tracking branch 'github/pr/174'
Complete reorganization of the Predis\Connection namespace.

* Renamed SingleConnectionInterface to NodeConnectionInterface since
  this name is better and makes even more sense in the context of
  cluster and replication scenarios.

* Moved specialized aggregate connections (the ones implementing both
  predis and redis cluster and master/slave replication) in a newly
  created Predis\Connection\Aggregate sub-namespace.

* Removed the "Connection" part from names of aggregate connection
  interfaces in the Predis\Connection\Aggregate sub-namespace.

* Changed "Composable" to "Composite" in the name of interfaces and
  classes that can use pluggable protocol processors.
Rename ComposableProtocolProcessor to CompositeProtocolProcessor.
Merge branch 'v1.0.0-dev/connection-namespace'
Fix parsing of the output of CLUSTER NODES to fetch slots map.

There was an error in presence of slaves in the cluster configuration,
see #165 for reference.
Rename alias used in Predis\Client for Predis\Transaction\MultiExec.
New command: ZLEXCOUNT (Redis 2.8.9).
New command: ZRANGEBYLEX (Redis 2.8.9).
New command: ZREMRANGEBYLEX (Redis 2.8.9).
[tests] Use annotations to specify expected Redis server version.

This change targets only method annotations and aims to make the body
of tests more readable using the @requiresRedisVersion annotation.

Tests using this annotation requires to be assigned the "connected"
group of tests because they create a connection to the Redis instance
specified in phpunit.xml to fetch its the version.

This is a quick example of how this annotation can be used:

    /**
     * @group connected
     * @requiresRedisVersion >= 2.8.9
     */
    public function testExecutedOnlyWithMatchingRedisVersion()
    {
    }

Future improvements (currently not needed) include:

  * Same annotation working on a class-level (but still applied only
    to test methods with an explicitly assigned @group connected).

  * Ability to specify a version range.

Meh

Meh
Rename RedisCluster::askClusterNodes() to askSlotsMap().

This is more consistent with the actual purpose of this method and
more in-line with a possible future change in the underlying command
used to retrieve the slots map if redis-cluster will implement the
CLUSTER SLOTS command.
Just rename a couple of local variables.