Settings : Add hooks for device specific features

Add support for :

Devices with bluetooth input peripherals
Devices with screen gesture support
Devices with a back touchpad

Conflicts:
	res/xml/language_settings.xml
	src/com/android/settings/cyanogenmod/ButtonSettings.java
	src/com/android/settings/cyanogenmod/SystemUiSettings.java
	src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java

Change-Id: Ia4835c69a8ba8fb76597e0ab0540f8ef1ed6e322

Conflicts:

	res/xml/system_ui_settings.xml
	src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
Add option for switching between UMS and MTP/PTP mode. (2/2)

This adds support for switching between UMS and MTP/PTP.
Settings part (this part) adds option in USB settings (statusbar/notification drawer) for enabling UMS,
and adds setting in Storage menu to enable / disable UMS, this since the USB settings page disappears when enabling UMS.

Forward port from cm-10.2, adjusted for 4.4

Change-Id: I6cf50a41a9a82e40e702f5231ce663636c149613

Conflicts:

	res/values/cm_strings.xml
Fix: Ensure lockscreen see through setting persists after reboot

If see through was enabled and the device was rebooted,
the user had to toggle the setting off and on again to activate.

Change-Id: Ic743986d9b0abae138e2291864ce527c4f9ff864
Merge branch 'kitkat' of https://github.com/AOSPA/android_packages_apps_Settings into kitkat
Merge