Networking api for batch network calls. The api can do caching of requests, throttling based on the network and retries the request on failure.