Abstract out the HTTP stuff into an HTTPRanger, and provide an interface for additional rangers.
Update the README for the new API.