More Suspend DBUS API work

We need a Can/Auth split for suspend/hibernate because the user
may be authorized but the system is unable to perform those
actions. Additionally start working the inhibit calls. We also
need to actually add the suspend/hibernate tools.