[COOK-1695] python_pip: Timeout value not passed to pip

http://tickets.opscode.com/browse/COOK-1695

python_pip supports supplying a timeout value already. However, the timeout is only passed to shell_out. If a user supplies a timeout value that is greater than the default pip timeout, the user's timeout value is worthless.

Without this patch the pip command looks like:
````  pip install [my options] package_name````

With this path the pip command looks like:
````  pip --default-timeout=timeout_value install package_name````

It's important to point out that '--default-timeout' cannot be passed to the pip provider through the 'options' attribute paramater because it would generate the following pip command. Order matters.
````  pip install --default-timeout=timeout install package_name````