Implement org.genivi.BootManager1.Start/Stop
This commit introduces a fully functional implementation of the
org.genivi.BootManager.Start() and org.genivi.BootManager.Stop()
methods.
It drops the BootManagerJob class and the BootManagerJobType enum type
in favor of a more simple BootManagerServiceJob struct typedef used
internally in BootManagerService.
BootManagerService now has two public methods called
boot_manager_service_start() and boot_manager_service_stop() that
call systemd to start/stop a unit. Both methods create
BootManagerServiceJobs and link them to the name of the corresponding
job created by systemd. Both methods also take callback and user data to
allow the result to be reported back to the caller.
The implementations of "handle-start" and "handle-stop" use the above
methods and report the results back to the GDBusMethodInvocation in
a callback.
Most other methods (e.g. Kill() or Isolate()) can be implemented in
pretty much the same way.
NOTE: systemd-manager-dbus.xml was changed to support an older signature
for the JobRemoved() signal. We will have to change this once we develop
using systemd 183 (where JobRemoved() has an additional unit name
argument).