RCv3 requests

The RCv3 steps added in #728 need to be turned in to actual HTTP requests. Currently, there is no support at all for doing anything with `convergence.Request` objects, so this PR adds that basic functionality.

It's primary goal is to do this for RCv3 support. It does not necessarily have to be the final API.

This probably should wait until the following PRs are merged:

- New dependent effect features:
    - [x] #730 
    - [x] #732 
    - [x] #733
- [x] `rcv3-steps`: #728

Once that's in master, I'll merge master back into this, and hopefully the diff will look a little less gnarly. While developing I will be merging these dependent PRs back in periodically.
Non-blocking nitpick - maybe  `_PureRequestStub` to make it clearer that this just stores parameters, and is unrelated to the `Request` function?  I was a little confused about that a couple commits ago.