Manager hierarchy
=================

Service		org.ofono
Interface	org.ofono.Manager
Object path	/

Methods		array{object,dict} GetModems()

			Get an array of modem objects and properties
			that represents the currently attached modems.

			This method call should only be used once when an
			application starts up.  Further modem additions
			and removal shall be monitored via ModemAdded and
			ModemRemoved signals.

Signals		ModemAdded(object path, dict properties)

			Signal that is sent when a new modem is added.  It
			contains the object path of new modem and also its
			properties.

		ModemRemoved(object path)

			Signal that is sent when a modem has been removed.
			The object path is no longer accessible after this
			signal and only emitted for reference.
