It seems that there are a bunch of functions in the API that don't work quite as expected until after the sensor init is performed, this leaves a window of time available where D-Bus calls can be made into the API but they will usually just crash and burn.
Since systemd considers the control daemon to be started as soon as the API is available by D-Bus, we should only register the API after the sensor is ready to deal with these API calls.
This manifests in the strange exposure values that appear when doing a 'service chronos-control restart' since this typically manages to get camApp booting during this window.
It seems that there are a bunch of functions in the API that don't work quite as expected until after the sensor init is performed, this leaves a window of time available where D-Bus calls can be made into the API but they will usually just crash and burn.
Since systemd considers the control daemon to be started as soon as the API is available by D-Bus, we should only register the API after the sensor is ready to deal with these API calls.