Add API repository backed by Faraday
Instrument faraday
Add Faraday middleware for X-Request-Id header
Faraday response middleware to parse link headers
Allow API repository timeouts to be configured
Add retry middleware to  API repository
Switch API repository to use nested exception

We can switch this to use exception causes once we can upgrade
to Ruby 2.1.

See http://devblog.avdi.org/2013/12/25/exception-causes-in-ruby-2-1/
Extract factory for building faraday connections
Make registries reusable