That's the acid test. Further critique is merely stylistic:
What you've done seems unnecessarily complicated to me. You're still hung up on the RPC classes being the scripting classes.
I don't have a non-proprietary example to share, and no time to prune one down for you.