Convert to use Faraday

This has several reasons. For one: Faraday is nicer for library users in that
we can give access to the faraday object so that they can configure which
adapter to use, in case they want to do tricky things like parallelism.

Secondly, Faraday is just a much nicer API to use than the OAuth gem from the
perspective of a gem author and maintainer. And, relatedly, Faraday covers more
of the HTTP feature set, so we should be able to make requests however we see
fit, rather than using hacks as we do in a couple of places in the current
release. And, since there's an existing OAuth middleware for Faraday, we
shouldn't have to require library users to jump through any more hoops.