Allow building a `Connection` to be built with a hash

This updates the `Connection` to allow passing it a hash.
Previously it just took a config object that it used to build its
connection pool and redis connection. Now if a hash is built, it
is converted to a config object and used. This way, either a
config object or a hash can be passed.

Closes #4 

@kellyredding - Ready for review.
@jcredding can we change this to `::ConnectionPool` to be explicit?