There's a bug in CPython [1] that causes servers to mis-parse request
lines that include the bytes \x85 or \xa0. Naturally, we have
functional tests that (with high probability) will send such request
lines. There's a fix proposed, but the earliest it's likely to land
would be for 3.8, and we need to be able to target an earlier Python.
So, intercept the request line immediately before parsing and re-write
it to be RFC-compliant. Note that this is done for Python 2 as well,
though there should be no change in the request environment that
eventlet eventually hands to us.
[1] https://bugs.python.org/issue33973
Change-Id: Ie648f5c04d4415f3b620fb196fa567ce7575d522