After chatting with Jochen Wiedman a bit, it turns out that you can't send subs or packages from client to server with PlRPC. They *must* be defined in the server. I suppose this is somewhat contrary to most distributed computing systems.
Another problem is that there isn't a way to autobackground a process with Net::Daemon. On top of that it doesn't sound like Jochen is really working on this module any more.
I think I'm going to propose a module called RPC::LPC (as in "local procedure/package calls"). This module will allow not only subs in the server to be called, but will also allow subs and entire packages to be sent from the client to the server where they will then be executed, with the results (if any) being sent back to the client.
I also want to allow the option of having the client tell the server to use an external package on the server's machine (which is how my system works now).
I have some big decisions to make. Do I want to roll my own server implementation or use something like Net::Server, which appears to have taken the best of all the server worlds and rolled them into one huge module. The latter would probably be the wiser choice, but think of all the testing I'll have to do for all the various modes! Good Grief!
Then, of course, there's the whole taint issue.