Base: update Immersive mode

allow choosing different state of navigationbar and statusbar like expanded desktop

taken from AOSPA

https://gerrit.paranoidandroid.co/3570
https://gerrit.paranoidandroid.co/#/c/3569/

Immersive Mode
- Front: Toggles Global On/Off.
- Back: Toggles modes (Full/Nav only/Status only).

fix build
rebased
rebased
rebased
fix build
fix build

Change-Id: I0b2821a9c725ada19f70d77855bb6d2a794ce5ca

Conflicts:
	core/java/android/provider/Settings.java
	core/res/res/values/custom_strings.xml
	packages/SystemUI/res/drawable-hdpi/ic_qs_immersive_off.png
	packages/SystemUI/res/drawable-mdpi/ic_qs_immersive_off.png
	packages/SystemUI/res/drawable-xhdpi/ic_qs_immersive_off.png
	packages/SystemUI/res/drawable-xxhdpi/ic_qs_immersive_off.png
	packages/SystemUI/res/values/custom_strings.xml
	packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java
	packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java
	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsModel.java
	policy/src/com/android/internal/policy/impl/PhoneWindowManager.java