Teach synths how to describe their own bespoke kill_delay for FX GC
Switch to using JSON for encoding messages:

* Will be easier to swap out to a faster native lib JSON parser later
* Easier to support interop with other langs
Teach FXNode to free bus in on_destroyed handler