1. we want optionally to log the body (we don't want to log the body
when we're fetching psiphon secrets or tor targets)
2. we want body logging to _also_ happen on error since this is quite
useful to debug possible errors when accessing the API
This diff adds the above functionality, which were previously
described in https://github.com/ooni/probe/issues/1951.
This diff also adds comprehensive testing.
This package contains code to contact OONI probe services.
The probe services are HTTPS endpoints distributed across a bunch of data
centres implementing a bunch of OONI APIs. When started, OONI will benchmark
the available probe services and select the fastest one. Eventually all the
possible OONI APIs will run as probe services.