Refactor Contact-Editor and Contact-Viewer.

Bug:2579760

Change-Id: Id61cc6fbc2b4def72df012cca3ac3c0185b583bb
Merge commit '18f104fa8c167a510b2cca3c15a43833c9a54c7c' into HEAD

* commit '18f104fa8c167a510b2cca3c15a43833c9a54c7c':
  Refactor Contact-Editor and Contact-Viewer.
Revert "DO NOT MERGE Fix Activity instance leak by ContactsPreferences observer"

This reverts commit c7f25410daccf9e14c1726fd3e778910d894f243.

Conflicts:
	src/com/android/contacts/ContactsListActivity.java

Conflicts:
	src/com/android/contacts/ContactsListActivity.java
Revert "DO NOT MERGE Sticky tab rule: Remember the last tab that was used to call"

This reverts commit 00ea05799040a55f85cc449fede956983003af97.

Conflicts:
	src/com/android/contacts/ContactsListActivity.java
	src/com/android/contacts/DialtactsActivity.java
	src/com/android/contacts/PhoneDisambigDialog.java
	src/com/android/contacts/ViewContactActivity.java
Revert "Implement granting of URI permissions from picker.  DO NOT MERGE."

This reverts commit 958aca24fb348cd8795a952df7de299f09e66d2d.

Conflicts:
	src/com/android/contacts/ContactsListActivity.java