{applets, dataengines}/battery: sync manual inhibition state
With the "manually block" switch, up until now instances of the power applet would each request their own inhibition from the fd.o service, so state and toggleability were not synced. To fix this,
- handle the cookies for the inhibition requests in the data engine, so each applet can access the same inhibition to undo it,
- add a listener to changes and a data key for the inhibition status, so applets could show the current state appropriately,
- uncouple the switch state from the toggle action, so one instance could request the (un)inhibition while all get their state updated.
Test plan: see bug report
Edited by Natalie Clarius