Proposed revision to Resque_Redis constructor

The current constructor for Resque_Redis accepts two string formats for the server parameter: "host:port" and "redis://user:passwd@host:port". If the caller employs the first method, but also expects to select a database and use a password, the database select call will fail, since the auth call has not yet been made. I.e., calling <code>Resque::setBackend('example.com', 1);</code>, then <code>Resque::redis()->auth('passwd');</code> *will not work*.

The current code can be made to work by users both setting a non-default database and authenticating, but only if they use the "redis://" method. Unfortunately, this method is undocumented, obscure, expects a pointless "user" component, and breaks if the password contains an "@".

This changeset provides the following solution:
* leaves in place the "host:port" convention for the server parameter, but adds an additional password parameter, so authentication can occur before database selection
* fixes the parsing problem with the "redis://" method for the sake of backward compatibility, but marks it as deprecated and leaves it undocumented
* moves the setting of default Redis server/host/database into the Resque_Redis constructor
* modifies `bin/resque` to accept the password for `Resque::setBackend()` via an environment variable, similarly to `REDIS_BACKEND`, then renames the `REDIS_BACKEND` environment var to `REDIS_BACKEND_SERVER` for clarity
* updates the README and doc blocs in a few places

I do not believe these changes should require any changes from existing users.