extract more generic WebServiceClient from JsonWebServiceClient