Minor internal change.

Check directly the private parameters array instead of passing through
method dispatching for the outer __isset() method.
Address #133 by reusing our own methods.

The main reason behind that code duplication was performance related
as we tried to reduce method calls when possible, even at the cost of
falling into the realm of early optimizations. Apparently we just lose
~400 req/sec on a 21000 req/sec basis ("SET foo bar") using PHP 5.5.3
(packaged by Ubuntu 13.10) on an Intel Q6600, so we will most likely
stick with this change for the sake of best practices.
Minor code styling changes.
Rework how connection parameters are handled.

These changes do not affect the actual functionalities of the client,
but make the code more explicit and less error-prone.
Slightly change interface for connection factories.
Rename URI parsing method of Predis\Connection\ConnectionParameters.
Minor optimizations for the parsing of URI parameters.

Using list() with the warning suppressor is slower than using isset()
to check the presence of the first two elements of the array returned
by explode(). This also allow us to skip incomplete query string pairs
when parsing the URI string.

We have also changed the exception being thrown on invalid URIs to a
more appropriate one.