use WebService::BaseClientRole to remove boilerplate http code

This is the first step of refactoring this client to have proper support for v1.1