Store correct IMSI when retreived from SIMRecords and use it for RuimRecords

Stock stores the IMSI gathered with SIMRecords and uses that value when
RuimRecords wants to get the APN/operator number.

Set System prop "ro.telephony.get_imsi_from_sim=true" to enable this function

Change-Id: I7df5d3c721afa3eeaf2f077b9f7399bd027d448b
Telephony: Allow ruim to fetch in CDMA LTE mode

... if device has LTE in NV mode.
Fixes cases where iccid could be unknown on some CDMA NV devices.

Conflicts:
	src/java/com/android/internal/telephony/uicc/IccCardProxy.java

Change-Id: Ie8e676a59e20c6da70eded511a979022667aa6fa
SubscriptionController: do not return info for invalid slot id

This causes Keyguard to crash when you switch a dual SIM phone into
single SIM mode for testing because the old data with the now-invalid
slotId is stored in the database.

Change-Id: I9d6102f94c11b808c272111230322507408b2d87
Merge remote-tracking branch 'upstream/cm-12.0' into HEAD