Closes https://github.com/ooni/probe/issues/2183
While there, avoid exposing nil values for optional fields of the
THResponse struct (i.e., "ip_info" and "tls_handshake").
While there, fix `measurexlite`'s `OperationLogger` test
and make it deterministic rather than racy.
Shared data structures and interfaces. We include in this
package the most fundamental types. Use go doc to get
more thorough documentation about what is inside this package
and when to put a type inside this package.