split send() into sendRequest() and sendResponse()