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
not flip if devices not support navigationbar
only collapse if FULL mode

Change-Id: I0b2821a9c725ada19f70d77855bb6d2a794ce5ca
Merge remote-tracking branch 'omni/android-4.4' into omni-4.4