feat(request): support body upload

Verified locally, but need body download support for unit tests.
refactor: perform request on response on stack
feat(response): fill content with response body

And verify request body in unit tests.