If we try to set an inline result when it has not yet been
accessed in settings, nothing is read from Settings.
Thus, include a default value for a fallback.
Manual merge for: ag/2588219/
Change-Id: I3b8eea4f82764852cea642db4455ba57f10a7d37
Fixes: 63955012
Test: robotests
Move the majority of the Setting set & get logic into
InlinePayload, but add formatting of input to each
concrete payload class.
Bug: 62022517
Test: make RunSettingsRoboTests
Change-Id: I08932871554beb4a04625f05f8555a5b3a887fe2
InlineSwitchPayload now assumes that all switches will be
stored as 1 or 0, which simplifies the code.
Moves Availability into ResultPayload, so that custom
payloads can be created to set/get values which are more
complicated than stotring ints (like bluetooth or DnD),
and give more expressive reasons when unavailable.
Bug: 62022517
Test: make RunSettingsRoboTests
Change-Id: I87e6fc041bfd398e7daf6e6e479d502930d36f0f