Added timeout support.

I couldn't find any info regarding a default timeout on urllib3, it might be the one specified by socket, though I'm not sure about this. In any case I think it's desirable to at least be able to define a more granular timeout, at this level.

I think this implementation keeps backwards compatibility, but please let me know if it doesn't.

Also, I ran tests locally (had to create a trial account for that) and [2 of them fail](https://gist.github.com/catalanojuan/a7d60992f35050f14630). I couldn't find the reason but my guess is that it has to do with using a trial account vs an upgraded one. I'm guessing this since I run the whole suite without my modifications and it still fails. Again, please let me know if that's not the case.

I tested this without specifying a timeout - just to see if it doesn't break working code - against our staging servers and it works ok (both queries and documents CRUD).

Let me know what you think.