add support for streaming responses