Pie controls: Reduce observer footprint of PieController

Based on former commit "Framworks: disable observer and
receiver if PIE is disabled" this commit reduces the observer
footprint of the new pie controller when disabled.

Change-Id: I866ad927c8b99ffa92f0d72bfe20215584649133
Reduce observers in SystemUI: StatusBarIconView

Currently, for each status bar icon view there is a observer that
listens for changes of STATUS_BAR_NOTIF_COUNT. With one
notification usually having one or more status bar icons
you may end up easily with 10+ more observers for ~5 notifications.

With this commit the internal observer class becomes a singleton.
This means there is now only one observer for all status bar icons
and additional binder calls on new notification are avoided.

See "dumpsys content"

Change-Id: I8c11b165b34b87e7363a8e96524ea70fe6b28342
Framework: Add Fast Charge widget - (1/2)

Change-Id: Iac753914624ce82e0ccd2a89dda66870923fa5f4

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerButton.java
	packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerWidget.java
Frameworks: Add fast charge QS toggle and other

this commit add
- qs toggle
- interactive reacting with pw toggle
- option stays after reboot
- option is hidden if kernel doesn't support
- code cleanup

Change-Id: I137720a7fe1acb7b36bec0f68ac0e5b6aa3fcbd0

Conflicts:
	packages/SystemUI/res/values/strings.xml
	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsController.java

Conflicts:
	packages/SystemUI/res/values/strings.xml
	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsController.java