Settings: Add Advanced reboot (1 of 2)

This commit adds a setting in Development settings for including options
in the power menu for rebooting into recovery or bootloader, defauled to
off.

When enabled, the Advanced reboot options will only be available once the
device is unlocked.

Change-Id: Ib77f0be178d15131b99adbe0abb6ba18b2b7c0b6

From: jackmu95 <jacob.mueller.elz@gmail.com>
Settings: Move 'Advanced reboot' to other position

This commit moves the 'Advanced reboot' checkbox one item down
because it looks a bit strange as first element in the list IMHO.

Before: http://goo.gl/jhw8h
After:  http://goo.gl/X3H68

Change-Id: I26d4a5caba3e720b952ec405e200c1528f7a7321

From: ThiagoVinicius <thiagovfar@gmail.com>
Development Settings: fix setting reset on disable

When Development Settings are disabled, some settings are
reset to values other than the default. This fixes it.

 - No need to have resetAdvancedReboot(), as it is already
   reset by the "unckeck all checkboxes" logic.

Change-Id: If5d88d220d2a17d6e172b2f54facd4afa3bae904
Port "Option to hide Adb notification icon (1/2)"

Frameworks part is already in place

Change-Id: Ie65625305153b45012846f6d2250fb707c4eebfd
Settings: Forward port long-press-back to kill app (1/2)

Change-Id: I60f4b95eb9cc2ef6cf73a5f9317bca066e6bb901
Buttons: Allow disabling hard navigation keys

This adds support for enabling the navbar on devices with
hardware keys.
This requires that the device supports the KeyDisabler
HAF methods, and is available in the Buttons menu

Change-Id: I01bd83b312745b4a8aa3bde0cf5f02ea99a888cc
Merge remote-tracking branch 'origin/cm-12.0' into cm-12.0