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
Fix a Cursor leak

When cursor is done, the cursor must be closed to avoid cursor leak.

Change-Id: I627cf2c8a64a220d6fd104505b852daca0928190
Fix a Cursor leak

When cursor is done, the cursor must be closed to avoid cursor leak.

Change-Id: I5f750a6bb499f86d4c76da40d171e9edfe6981d2
Merge remote-tracking branch 'slim/jb4.2' into jb-mr1