Replace Net::HTTP with Faraday

This commit changes the `http_client` and `make_api_request` methods to use Faraday. Nothing changes by default but this allows users to specify different HTTP adapters (by setting `Faraday.default_adapter`) that are more suitable for their application.