Remake kb/button backlight controls as a PowerManager client

PM now has observers for these settings values and applies them in
realtime, so piggyback on those for button light management

Change-Id: I7568069bd6cacf5cbb56c8d0a1746894725b87fa
Add configurable kb/button backlight timeout

Adjust the value for Settings.System.BUTTON_BACKLIGHT_TIMEOUT

Change-Id: Iea534312b09b38a95185d7fc97d922b23faf29e3
Improve button/keyboard backlight code.

- Improve UX
- Deduplicate code

Change-Id: Ie0218de8b83fe49e3fe1d91a64c2522af03ba06d
Merge "Remake kb/button backlight controls as a PowerManager client" into cm-10.2
Merge "Add configurable kb/button backlight timeout" into cm-10.2
Merge "Improve button/keyboard backlight code." into cm-10.2
Merge remote-tracking branch 'cm/cm-10.2' into cm-10.2