TODOs:
- decode the in & out parameters (method + params) together on the RPC object. currently they're a single string because the go-pdk expects a string channel
- the instance goroutine finishes after a single event, should stay until the instance is closed