Problem:
ConnectionFuture requires that the inner future be Sync, but this creates some friction within the ecosystem.
This friction is demonstrated in #4980 , where customers have to spawn a separate tokio task and await on it to use the AWS SDK inside s2n-tls callbacks.
Solution:
We could remove the Sync bound from our futures. There is some good reading here
Requirements / Acceptance Criteria:
Friction with the AWS SDK is a good touchstone. We should either remove this friction or have a very clearly documented reason we need this friction.