framework: Privacy Guard

 * Introduce a new privacy feature which allows the user to run an
   application with reduced visibility into his or her personal data.
 * Adds a per-application flag and simple API to determine if this flag
   is enabled for the current or calling process.
 * This flag can be used by content providers to decide if they should
   return a limited/empty dataset.

Change-Id: Id7c54d728e63acb2b02a2a9322930b54949f6c5d

Conflicts:
	core/java/android/provider/Settings.java
	core/res/res/values/cm_strings.xml
	core/res/res/values/symbols.xml
	services/java/com/android/server/am/ActivityManagerService.java
Add missing @hide annotations for Privacy Guard

Change-Id: I6072ed2d3ac05382f9cabbada0c42cea6cbe2422
fix build

Change-Id: I591d255d4eb339da8e32b1cd39160f8d4375e3f7
change default

Change-Id: I0b06d4ab0e526205c8cfbc8c6b38b6178b787be3
change defaults

Change-Id: I4e03cf376ab63083ee738bacabb6d5edb8dd1f04
QuickSettings: Camera tile

Change-Id: Id0beb3dd559536bb5571ddc87cb0bcb4945b1a77

Conflicts:
	core/java/com/android/internal/util/cm/QSUtils.java
	packages/SystemUI/res/values/cm_strings.xml
	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsController.java
add strings

Change-Id: I401a22ec9b30bb496b021f1948093c1855a6bcb5
fix build

Change-Id: I7ba857b75a5cb970b93705646cb25846c1f21788
AssetRedirectionManager: Accept redirections only for whitelisted resource types

Change-Id: Ic1768269c1de1ff32a8ce40fc556de37ffc16e28
privacy guard: Use LocationBlacklist for location filtering

 * Google has built a per-package blacklist into the location service.
 * Let's use this to handle Privacy Guard instead of our one-off code
   which has a bunch of edge cases and can leave apps in a weird state.

Change-Id: I2f2ecd0b75ff51b44b1a6035189355d7bd63eaf4
Fix pie activation when enabling expanded desktop from QS tile.

Change-Id: I204dc850deed4aac243ead3b83dc7e9908339187