@kshegunov yes that is exactly what I was wondering. I was not sure if plugins can be loaded into other C++ plugins or not. I will give this a shot.
@SGaist good point about creating a library. I think isolating the communication API into a dynamic library would be an even better solution as you suggested. I will have to do some refactoring.
Thank you both for sharing the quick and helpful response!