cmhw: Use hardware's default value for display features

Change-Id: I1ad4d43ec08fb3a65f2f5d13e48e3becc341d34f
(cherry picked from commit b7199689e3d36e7fb269acfa7a615f640051a07e)
setting: Always remove Left-handed mode setting for non-phones

Right now, this option is only removed if you have a navigation bar
enabled and you aren't a phone.  This leads to UI wonkiness on
devices that allow the navigation bar to be toggled on/off:

* Enable the navigation bar.
* Navigate elsewhere and back to Buttons (force it to reload)
* Settings >> Buttons now contains a (grayed out) Left-handed mode.
* Enable the navigation bar.

Now Left-handed mode is available as an option even though it
shouldn't be.

Change-Id: Ifb3cdd18a014edffaf8bc53c46fc3c2f7a681370
(cherry picked from commit 6833e8c627e0b44b0ee7191fce714556ab3eac25)
settings: Avoid NPE in NfcTrigger when device doesn't support NFC

Change-Id: I7775540a752b6f31f8c5bb51eaf20e566b4858a5
(cherry picked from commit f95543d4f52dbcbc1192900769d834e1ed641855)
Settings: Reduce volume to safe level when headset is connected (1/2)

This is a safety feature for users who opt to raise volume above the designated
safe level while using a headset.

Currently when a user does this they are provided with no protection against
dangerously high volume levels until the next time the headset volume warning
is displayed.

This patch adds an optional feature to ensure volume is no higher than the safe
level every time a headset is connected.

Change-Id: I8ec35284a91a26511b0bc83fcc1578f38b8b4f40
(cherry picked from commit df97267eb538ae094d9dca5c8916a1171bd9abd4)