Support multi-launcher

Each launcher can have its won set of pinned shortcuts.
- Shortcuts pinned by others should look like not pined to this
  launcher.  This affects how ShortcutQueryFLAG_GET_PINNED works,
  as well as what ShortcutInfo.isPinned() returns.

- When pinning a shortcut, it should be a visible one to itself --
  a non-dynamic shortcut that's pinned by another launcher but
  not by the caller is not visible, so this launcher cannot pin it
  either.

- Also clean up the dynamic shortcut adding.

Bug 27548047

Change-Id: Ia478a2ea19b7d35557ec6ea42384c79a84d6b8de
3 files changed