update the http client so that it doesn't know anything about access headers. instead, allow users to set headers on the client