Frameworks: Custom Shortcut Quick Settings Tile (1/2)

This is a slim bean unique feature : multiple QS tile for custom shortcuts
With this feature, we can have shortcuts to:
- An app
- An activity inside an App
- A contact
- A direct call to a phone number
- A specified folder
- A browser bookmark
- A direct sms to a specified user
- etc
The icons can be changed by the user to: default, system icons or from gallery
Thanks for blk_jack and kufikugel for making the task easier for me with their
notification and lockscreen shortcuts

PS2: center the icon on the tile and take the computed size
PS3: added some titles and made the shortcut picker not cancealable by the back button
PS4: now it is called Custom Shortcut with intelligent icon resizing
PS5: improve tile content management
PS6: fix compile error by removing 2 old unneeded files from git
PS7: provide resoures for mdpi, hdpi and xhdpi
PS8: added some details to the commit message
PS9: display contact's photo if shortcut points to a contact
PS10: some code cleaning and optimization
PS11: improve icon management and tile content sharing with settings app
PS12: resources renaming to match quicksettings ones
PS13: more resource renaming
PS14: stretch icon on the tile size if the shortcut points to a contact (except for system icons)
PS15: Show contact photo when choosing a direct call/sms shortcut (with a nice overlay icon)
PS16: change tile label in all translated strings.xml files
PS17: inflate generic tile layout when the icon is smaller than the tile size
PS18:
- change icon handling for normal shortcuts to fit other QS tile UI
  icons are multiDpi resized + text is in a line now
- bigger code cleanup
- rebase on delete fav icon commit
- put out translation strings into seperate commit
- some minor stuff
PS19 + 20:
- calc moved out from updateSettings()
  no need to do it every time let us
  save resources
PS22-24:
- rebase on latest frameworks fix
PS25:
- display quick contact instead of contact app
PS26: white spaces and tabs clean up

- rebase

Change-Id: I36f7807414ff92419ff575d22ed3e0dd73ec1d74

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