Avoid getting stuck in a loop

This prevents a case where we make a request to URL A, which 301s to B which
would then 301 back to A. Alternatively, for less simple schemes, this will
also prevent us from getting stuck in a loop, e.g., it will prevent the
following from causing an endless loop:

    A -> B -> C -> D -> E -> F --
    ^                             \
    |                             /
    ---<------------<----------<-
Merge pull request #2244 from sigmavirus24/bug/2231

Avoid getting stuck in a loop
docs: Clarify how to pass a custom set of CAs

This new wording makes it hopefully easier to find how to override the
system-provided list of trusted CAs. I failed to find this through some googling
and had to resort to asking on IRC previously.
Merge pull request #2248 from jktjkt/docs-CAs

docs: Clarify how to pass a custom set of CAs
Support bytestring URLs on Python 3.x
Merge pull request #2238 from buttscicles/byte-urls

Support bytestring URLs on Python 3.x