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
Implement UICC TLV Data decoding.

Some phones / SIMs returns data in TLV format as decribed in ETSI TS 102 221 11.1.1
This enables parsing of TLV data if it finds one. This fixes reading of SIM_IO
data like ICCID, MSISDN, etc on affected SIMs.

In CM-12 this is needed for phone to function properly. In CM-12 Multisim support
requires ICCID. If ICCID is not found then user is unable to make any outgoing
calls. User is shown "Call not sent" error.

Change-Id: I0fe20a9ec4cdd6021e7cb614ae578bc1c2c1d1fd
Merge remote-tracking branch 'origin/lollipop' into L