Instead of using a predefined set of string values for 'ip-type' in
Modem.CreateBearer() and Simple.Connect(), we'll use an enumeration. The
implementation will then need to convert the requested IP family type to e.g.
the correct PDP type in 3GPP modems.
This change also consolidates the use of enums in dictionary properties when
possible to do so, as with the Rm Protocol.
Plugins may specify that specific vendor & product IDs or strings are not
supported. This is useful when plugins need to specify that they support
all devices of a given vendor except for some specific ones.
There's no real point in maintaining a separate `MMPlugin' interface, as all the
plugins will inherit from `MMPluginBase', so just merge them and simplify
everything.
Elements in a DBus interface name cannot start with a digit, so
"org.freedesktop.ModemManager1.Modem.3gpp" is an invalid interface name.
Renamed here all relevant interfaces so that they have an additional "Modem"
prefix in the element, so we get now:
"org.freedesktop.ModemManager1.Modem.Modem3gpp"
"org.freedesktop.ModemManager1.Modem.Modem3gpp.Ussd"
"org.freedesktop.ModemManager1.Modem.ModemCdma"
Objects generated with gdbus-codegen maintain the previous names.