Add wrapper classes for UICC service tables.

The USIM application on the UICC contains an EF for the USIM service table,
a byte array containing a bit field of available services on the USIM.

IccServiceTable is an abstract class to manage a byte array containing a
service table and map it to human-readable enum values defined in the
subclass, e.g. UsimServiceTable. The availability of a service can be
tested with isAvailable(), which is implemented in the subclass to take
an enum, e.g. UsimService, as a parameter, and passes the ordinal to the
generic isAvailable() in the parent. IccServiceTable also provides a
toString() method that returns a human-readable list of enabled services.

The ISIM application for IMS contains a similar ISIM service table.
This can be supported with a new IsimServiceTable class in the future.

Change-Id: I9c3134672ed306e297dd35d633235cffca510aad
7 files changed