switch-to-configuration.pl: Interact via DBus

Currently switch-to-configuration.pl uses system() calls to interact
with DBus. This can be error prone, especially when we are parsing
output that could change. In this commit, almost all calls to the
systemctl binary have been replaced with equivalent operations via DBus.
Merge branch 'master' into dbus-switch-to-configuration

Conflicts:
	nixos/modules/system/activation/switch-to-configuration.pl
Merge branch 'dbus-switch-to-configuration'