implement async_request mode

- currently only works if 'stream_to' option is enabled as well,
- the client is expected to submit request body with a request_chunk/2
  and indicate the end with request_done/1.