[Base] Refactor hw keys handling with navbar presence (1/2)

This commit removes per hw keys disabler/enabler. Now all hw keys get their functionality observing navbar state. Navbar on = all hw keys disabled and navbar off = all hw keys enabled. Add a check in ViewConfiguration.java to determine presence of navbar for add or remove 3-dots menu button in app that need this.

Partialy remove this commit: https://github.com/cristianomatos/android_frameworks_base/commit/8a736c2763ea190170bb3c49cbdabde2e3d079d2

Change-Id: I6f4fb6c0f3cad20be3b3ce171dc7021a43884f36
Avoid SysUI force close due a miss check of ENABLE_HEADS_UP

Change-Id: I50c50ea55c800b5486f0f92263dcd3f03729312c
Fix re-assignment of hw keys after disable/enable navbar

Change-Id: I85eb4617930b932fcefb3077fc2bcbd511b9ac81
Patch SysUI force close in Heads Up

Change-Id: Ifa58da1e85dfa96ecc23e203abcb964c7f41b092
Only start one WifiClientScanner

*) Fixes unexpected soft reboots.
E/AndroidRuntime(18586): *** FATAL EXCEPTION IN SYSTEM PROCESS: WifiClientScanner
E/AndroidRuntime(18586): java.lang.IllegalStateException: Cannot execute task: the task is already running.
E/AndroidRuntime(18586):     at android.os.AsyncTask.executeOnExecutor(AsyncTask.java:576)
E/AndroidRuntime(18586):     at android.os.AsyncTask.execute(AsyncTask.java:535)
E/AndroidRuntime(18586):     at com.android.server.connectivity.Tethering$WifiClientScanner.handleMessage(Tethering.java:596)
E/AndroidRuntime(18586):     at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime(18586):     at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime(18586):     at android.os.HandlerThread.run(HandlerThread.java:61)

*) Remove unnecessary mDoScan class member variable.

Change-Id: I17ab368366b9a3456a625974c461783c428efec2
[Base] Ability to turn HW keys on/off on supported devices (1/2)

- Enabled through overlay in devices repo

Change-Id: I5ca53bf60482392298c7ab6de3efe17abf20b2b9