Transferring some argument pack is much easier than trying to
deserialize into an existing object when you also have to transfer more
information than just that object.
And add separate implementations for the native plugin and the Wine
plugin host. This way we can easily allow the native host to do
callbacks without having to manage a load of lambdas.