cgmanager_move_self: make some style fixes
cgmanager_create: add const to signature

This function doesn't modify the passed-in list of pids, so it should be
marked const.
cgroup-unit: include cgmanager header

We are calling lots of functions so we should be including this
header...
systemd-iface: mark interface xml 'static'

This is never used outside of the file that includes it, so mark it
static.
cgmanager_call: allow for return values

Provide an optional pass-by-reference parameter so that cgmanager_call() can
also be used for functions that we need to check the return value of.
cgmanager_call: make error reporting optional

We expect that some calls may fail harmlessly, so we want to be able to
avoid printing a warning.  We indicate this by setting NULL as the
expected type for the return value (ie: saying we don't care about the
return value).
cgmanager_remove: return a boolean

Return a boolean depending on if the remove was succesful or not.

We can use this to find out if we should try another round of killing
off processes.
lookup_unit: take a string instead of a GVariant

It was convenient for lookup_unit to take a GVariant instead of a unit
name since the only time we wanted to fetch a unit was in the case that
we were handling a message that had the name of the parameter as the
first parameter.

We are about to introduce a new use of this API that won't work this
way, however, so remove this hack and do it more sensibly.
unit: add optional abandon vfunc

Nothing implements this yet, and nothing calls it.
Add state tracking facility

Add a mechanisms for allowing units to store state information in /run.

This is required for us to handle scopes (which are stateful) while
still allowing systemd-shim to exit on inactivity.

Nothing is using this yet.
Implement Abandon and StopUnit for cgroups

Use GDBus subtree support to export a tree of unit files.  Allow Abandon
to be called on these.  Use cgmanager to get a list of cgroups on the
system in order to populate this tree, in case someone tries to
introspect it.

Implement Abandon for cgroup units by calling Prune on the cgroup.  We no
longer call RemoveOnEmpty when the group is first created.

Implement StopUnit for cgroup units by killing all of the processes in
the group and trying to remove it.

This patch uses the new Prune and GetTasksRecursive APIs in cgmanager,
so we must now depend on protocol version 8.
configure.ac: add some default CFLAGS

We had some (harmless) long-standing issues due to insufficient default
warnings, so let's add in some default CFLAGS.