python: avoid mutating Request object from within its send method
This is just a refactoring, previous implementation worked fine. It
just doesn't make any sense to have `Request` object attributes that
the `send` method sets basically just for itself.
See #2138
See PR#2102
Merges: #2149