Phone: Fix NPE in PhoneUtils::toLogSafePhoneNumber

When PhoneGlobals.DEBUG_LEVEL is set to 2, there
will be NullPointerException when receiving an
incoming call from an unknown number.

Change-Id: I2a730b891420695f3a410164e611b66cf757edc8
Signed-off-by: Bin Li <libin@marvell.com>
Use supplementary service notifications to display additional call info.

- If an incoming call was forwarded from another party, 'Forwarded call'
  is displayed as call type.
- If a call is held by the remote party, 'Waiting call' is displayed as
  call title.
- Some other events (e.g. forwarding state or conference call start) is
  displayed by (optional) toasts

Idea and some early code were taken from AOSP-Change-Ids
Ic61628882fef7409deae677f50f380e62bef98f6 and
Ib0c9bfc889f9ce34cb76c6dfef99b51b6c47423f.

This is a squash of the following gingerbread change IDs:
I84e16ead5dc903e0543feacc99ae94c16798a8b5
I6bcfa33eaf5dd23446cc3cf1712b0fa2f37ea8d0
I535ab5bb89941a0e9c9a34a8d69caf84437b2bce
I02491773f8a1b154974b83f984e5aa16f535e35f

Change-Id: I33c9bf60eac429de46bb987dbf4343fe7f21707e

Conflicts:
	res/values-de/strings.xml
	res/values/strings.xml
	src/com/android/phone/PhoneUtils.java
Clean up in-call vibration implementation.

Change-Id: Ic91e8be169f7ba62ea2dc83dee2215df8a59c915

Conflicts:
	src/com/android/phone/PhoneGlobals.java