Add support for an API timeout

Closes #100 (or at least proposes to close it).

The client does not seem to have the ability to control the timeout behavior of a given API invocation. This patch creates a new keyword argument, api_timeout, currently only applied to the helpers.bulk() API, which gives the caller the ability to specify a urllib3.Timeout object, if so desired.  This does not conflict with the HTTP based "timeout" parameter.

If this is on track, I can work to add this to the other API interfaces, and some explicit tests.

We also remove the redundant version numbers between setup.py and __init__.py.