Runtime toggle of navbar

This adds the framework support for enabling the Navigation bar
on devices with hardware keys. It is toggled from Settings, and
depends on device-specific support for the KeyDisabler hardware
control

Change-Id: I88fecb2ca1e8613591c327a93f53909b00239cd8
Don't let apps disable the SIM PIN entry screen.

As the user (who controls the app behaviour after all) likely doesn't
see the PIN screen as a lock screen (he likely wants telephony) and the
PIN screen is not shown on a timer-driven basis, it should be treated
specially.

Change-Id: I8d48ab5f097bc926f67eab5835d9b5f1e581db15
Send out USER_PRESENT broadcast on screen on if lockscreen is disabled.

This makes sure to turn off the notification LED on screen on when the
lockscreen is disabled by profile or e.g. by lockscreen toggle tile.

Change-Id: Ibf2fdcd912a2719d973a253aaf3752add7a22e00
Don't recreate keyguard for MCC/MNC changes.

Change-Id: I9e5dfdb12df522dc7dd50c26f35aba26b1bbe44e
FaceUnlock: Check if faceunlock is disabled

JIRA: CYAN-3622
Issue: https://jira.cyanogenmod.org/browse/CYAN-3622

Change-Id: Iaf656f1aecb72610a46183294de25151e8df4b05
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Update the GPS tile to use the appropriate location modes

With 4.4, there were new location modes this tile did not support
Update it to turn the GPS on/off without changing the network-based location
option, and use a new icon for battery saving mode.

The tile will now either toggle between high accuracy and battery saving,
or location off and device sensors only.

Change-Id: Ifdfb9832c77671ab1f0c415ea2c25dfee2888578
Merge branch 'cm-11.0' into kk_mkt