centrailize client-writing logic for streaming resource
add more metadata about reading to publish, and use AsyncJSON to produce
add StreamingClient implementation
add example usage for StreamingClient