Just a quick update - I have plans to spin off the sockets backend into its own DLL library with a C API, since it depends on Boost. Maybe even make the library directly accessible from Zorro.
This way, the plugin itself would not have a direct dependency on boost. This will make code management much easier.
Also, I dislike my current multi-threaded design - there's no need for it. I can call windows handles using sockets, so networking can still be asynchronous while still single-threaded.
I can afford to be a perfectionist since there's no deadline, and this is not a funded project. But at the end of the day, I'm trying to make this repository as easy to maintain as possible.