PhoneApp: Initialize ToneGenerator when needed

Whenever there is a radio tech change, mSignalInfoToneGenerator
is released and never created. This leads to phone app crash later
when it is accessed for toneplay. This is fixed by creating the
instance (if null) before calling the APIs.

Bug: 8609102
Change-Id: Id9ebe6af5c1f92520ee5c2ca6efc4db335eb01f7
Phone: Sprint MWI Quirk: Phantom message wait indicator workaround

If true, message wait indicators are hidden by default on this device
unless the user enables it in Call Settings. This quirk is necessary
for the "Phantom Voicemail" issue where notifications that are
impossible to dismiss on the Sprint network. In rare instances, feature
phone voicemail gets stuck in a Sprint account where smart phones are
unable to delete them. Sprint will not help the subscriber fix this,
as their own Android phones ignore message wait indicators.

When you enable 'sprint_mwi_quirk' in overlay/packages/apps/Phone/res/values/config.xml
this option appears in the Phone app:

Settings > Message Wait Indicator

Default is disabled, as Sprint Android phones have no reason to see
message wait indicators. It can however be enabled for Sprint phones
used on overseas carriers where message wait indicators are desired.

Rebased on jellybeans

Change-Id: I36f8d43b5684a6f7337852da0394a21ca92fefbf
Merge branch 'master' into HEAD