commits
In order to make configuration changes to configs while servers are
running, we need to allow an Arc<DeviceConfigurationManager> to be
passed to a new server. We can then handle updates via interior
mutability.
Just load directly into the DCM builder now.
Make sure actuator/sensor features are bound via type, not just value checking.
Instead of trying to constrain types, make de/serialization for communication
types look like internal storage of the data. This makes life way easier for actually
writing out user configs.
Didn't clarify anything and screwed up serialization
Code that required that is no longer in system.
Assume we'll always have certain fields, versus trying to use Option and guess to
make less structs
Stop trying to make everything work across config and messages for now.
No more inheritance makes life way easier
Sucks but I really don't want to keep any of the inheritance stuff around