Solve *all the things*

This resolves issue #1, issue #2, and issue #5 (and I've just
resolved issue #4 in 868763d). Now we:

 * Can talk HTTP/1.0 for those of us who don't need keep-alives and want
   more simplicity instead (issue #5).
 * Have a way of managing the socket cache on a per-caller basis, or
   disabling it completel (issue #2).
 * Can specify the connect timeout independently from the read timeout (issue #1).