Consider separating out parts of the `Runtime` for easy reimplementation
The following discussion from !166 (merged) should be addressed:
-
@nickm started a discussion: (+1 comment) Eventually, is the plan to allow the TlsProvider and the TcpProvider be separate objects? That way we could have separate, orthogonal TlsProvider and TcpProvider implementations.
(This doesn't have to be done in this MR.)
As noted there, it would make it a lot easier to swap out parts of the Runtime
if it wasn't just one big object with various trait implementations; we should investigate doing this to improve API ergonomics.