Introduce an isolation layer between GDBRemoteClientBase
and GDBRemoteCommunication. This makes it possible to replace
the public packet reading/writing API with wrappers that will make
threaded access possible in the future.
Sponsored by: The FreeBSD Foundation
Is the plan to make this private/protected at some point, or something like that? Otherwise, I'm not really sure what's the benefit of this over the regular inheritance.
I like the idea of using composition instead of inheritance (I think we could do something similar with GDBRemoteCommunication and Communication), but right now this seems fairly messy, and the benefit is unclear.