proxy mode, pt 2

The ReverseProxy code from the standard library doesn't actually
give us the control that we want. Pull it down and rip out what
we don't need, adding tests in the process.
It reads so much simpler.
"For each endpoint in the list of endpoints, if the endpoint is available, add it to the list of filtered endpoints"
vs.
"For each endpoint in the list of endpoints, if the endpoint is not available, continue on to the next one; otherwise, add it to the list of filtered endpoints"