Initial json client implementation:
- Support handling successful & failed http responses
- Handle json arrays in response bodies
- Handle json objects in response bodies