Composition and Parameters: Best Practice Suggestions

To add on to @wjwwood

ParameterService allows other nodes to set/get/list parameters in this node.
ParameterClient provides API to set/get/list parameters on other nodes.

Neither of these are the API for interacting with the parameters for this node, which should be done through Node.

A caveat on Node::register_param_change_callback(), you can only register one callback per node (currently), if you register multiple times, only the last one will be called.