refactored ContactWebService to accept multiple http request types