Description
Some places in the code base use the ResponseHandlerContext which ensures that only a single response is sent for a particular request [1] but other places do not [2]. This task is to use the ResponseContext consistently across the code base to prevent cases where client gets two messages for the same request (this can break the client when it has removed the RequestQueue thinking that the query is complete and yet a message comes for that request queue).