Allow for the use of @ in remote host calls

Without this you have to use %40 with the -H flag because dbus doesn't
like the @ sign being unescaped.
service: don't report alien child as alive when it's not

When a sigchld is received from an alien child, main_pid is set to
0 then service_enter_running calls main_pid_good to check if the
child is running.  This incorrectly returned true because
kill(main_pid, 0) would return >= 0.

This fixes an error where a service would die and the cgroup would
become empty but the service would still report as active (running).