Bring in Keydisabler hardware support credit @cyanogenmod

custom implementation based on:

https://github.com/CyanogenMod/android_packages_apps_Settings/commit/fa000453dce8936ee6805c8d953f3ab8d42f2b21
https://github.com/CyanogenMod/android_packages_apps_Settings/commit/c4d2f9c285d79a282cb821e9d4df4a833f8e26c3
https://github.com/CyanogenMod/android_packages_apps_Settings/commit/25b21eb3987183af79c81ed48af53ea5643760f6

PS2: Indentation cleanup and restore KeySettings from observer

Change-Id: I6adea4bae508821ef6414e14044d981cd6268e5c