src: Avoid state regressions

When the SIM state is switched to ready, the modem was assumed to be in
PRE_SIM state, which is not always the case for some modems. This caused
the modem to go to OFFLINE, and then to ONLINE, but the modem was
already ONLINE, and this implied removing some already available atoms.

The root cause is that for some modems when the radio is off you cannot
access the SIM, so the SIM atom is created when they move to ONLINE.
gril: Changes to support MTK modem

* Add a vendor flag that can be checked as needed
* Add hooks to print vendor specific requests and events
* Treat differently some parcels for the MTK modem
* Add deprecated radio states, needed by MediaTek modem
plugins: Support mtk modem

* Create new mtk plugin
* Support mtk in rildev
* Modify ril plugin to support changes in gril and in rilmodem sim atom
interface
rilmodem: Changes to support mtk modem

* MTK modem specific behaviour is addressed
* spn-table plugin support is added to network-registration
* Change in rilmodem sim interface
* Fix not checking properly null pointer in gprs atom
* gril changes are addressed
* Add file with list of rilmodem modem types
mtkmodem: New mtk modem driver

This driver provides support for MediaTek modems. Most of the
functionality is already provided by the rilmodem driver: this driver
provides support for specific MTK parcels and voicecall and gprs atoms.
These atoms are separated from those in rilmodem as they use specific
MediaTek requests and events. This will allow us to move the driver to
a dynamically loaded plugin if desired.
include: New interface for spn-table type plugins

This new plugin type allows adding plugins that can be used to search
for operator names if the modem is not able to find it for a given
MCC/MNC pair.
src: Add support for spn-table type plugins
plugins: Add android-spn-table plugin

This plugin looks for the SPN in the spn-conf.xml Android file.
build: Add plugins for MTK modem support

* Add mtk, androidspntable, and mtkmodem plugins
* Add support for spn-table type plugins
unit: add missing endian ifdefs to test-gril*
Merge pull request #69 from tonyespy/unit-endian-cleanup

unit: add missing endian ifdefs to test-gril*
Merge pull request #59 from alfonsosanchezbeato/mtk-support

MTK support