Start adding the Suspend/Hibernate DBUS API

The initial work in progress to add in suspend/hibernate and the
inhibit locks.
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.
Start working on the inhibit files

Might need an inhibit manager at some point in the future to track
all these locks and prevent duplicates. We'll see how complex it
needs to be.
More inhibit work
Add some tests for inhibit locks
Parse the what portion for inhibit
Add the suspend/hibernate scripts

Also add the test-inhibit.c file to the repo, oops.
Update documentation
Allow the dbus calls
Use g_io_add_watch for the named pipe
Emit signals on inhibit changes

Also start working on the inhibit manager.
Fill in the inhibit manager some

And add additional tests for it as we go
Inhibit Manager now emits event changed signals

When the inhibit lock increments to 1 it will be TRUE and when it
reaches 0 it will be FALSE. Additional locks above 1 will not emit
a signal but the manager will keep track.
Hook up the inhibit manager
Fix hibernate on FreeBSD

And g_assert_nonnull requires glib 2.40 so we'll do without it.
Make the inhibit locks inhibit the actions

Also refactors some of the logging code to remove duplications.
Not sure if the can or auth checks should return FALSE if there's
an inhibit lock on the action... but that can be easily added in
the future.
g_return_val_if_fail can't be used in void function
g_assert_false is too new
Merge branch 'dbus-api-additions'

Implement the Suspend/Hibernate DBUS APIs for:
https://github.com/ConsoleKit2/ConsoleKit2/issues/3

Conflicts:
	configure.ac