Fix headset detection.

Original CM Commit below by Shelnutt2
Services.jar: Reworked computeNewHeadsetState function to
set state in a manor used in ics. This allows states such
as 129 and 130, which are used for 35MM_HEADSET to be
correctly registered as a new state.

Change-Id: I3bd1ec17d0cd184593edf330f482f09396785e76
TEMPORARY: Reintroduce button-backlight (and respective inactivity timeout)

The power manager rewrite from Change I1d7a52e98f0449f76d70bf421f6a7f245957d1d7
completely removed support for control of the button backlights, which makes
all capacitive buttons out there stay dark. The commit message in that change
mentions it hasn't been implemented _yet_, so this fix should be temporary
until upstream does their own implementation

Change-Id: I6094c446e0b8c23f57d30652a3cbd35dee5e821a
Keyboard light: Fix the physical keyboard not light when it's visiable.

Change-Id: I9049a960877963f9f878672df6ad85085cf08286
Add framework support for keyboard LEDs (Caps/FN)

Change-Id: I0045745b8573410d3017c08e29a0122e7189c40a
geofence: Low power geofence HW implementation

HW implemntation overwrites the SW implementation

Change-Id: I8762b0b2e3c5001622f9c8aa2a845ee64104faa3