This adds a dedicated class for loading/unloading and sending data to a plugin rather than doing it all in `main()`.
It also keeps track of the loaded plugins and their supported version which the extension will query again in the future.
It could also potentially handle things like sending a reply to an incoming dataset by storing a reference/identifier to the request etc.