use WebService::BaseClientRole to remove boilerplate http code

This is the first step of refactoring this client to have proper support for v1.1
All this stuff will go away in a subsequent refactor. Putting it here for now until then.