bus: do kdbus only if this is enabled on the configure switch

Since we want to retain the ability to break kernel ←→ userspace ABI
after the next release, let's not make use by default of kdbus, so that
people with future kernels will not suddenly break with current systemd
versions.

kdbus support is left in all builds but must now be explicitly requested
at runtime (for example via setting $DBUS_SESSION_BUS). Via a configure
switch the old behaviour can be restored. In fact, we change autogen.sh
to do this, so that git builds (which run autogen.sh) get kdbus by
default, but tarball builds (which ue the configure defaults) do not get
it, and hence this stays out of the distros by default.
bus: catch up with kdbus
macro.h: fix typo in comment
sysfs-show.c: return negative error

introduced in 1ca208fb4f93e5869704af1812cbff7130a2fc03
util.c: check if return value from ttyname_r is > 0 instead of != 0

We must return a negative error code from getttyname_malloc but
that would not be the case if ttyname_r returned a negative value.

ttyname_r should only return EBADF, ENOTTY, or ERANGE so it should
be safe to change.
bus: remove unused variable
bus: remove unused variable
docs: remove unneeded the's in gudev docs

https://bugs.freedesktop.org/show_bug.cgi?id=72164
man: explicitly say when multiple units can be specified

itistoday> how do you specify multiple dependencies in a unit file? i've been
           googling and can't find this basic thing :-\
itistoday> do you use a comma, or use multiple After= statements?
systemctl: refactor show()

v2, don't leave in unused function
systemctl: add "systemctl cat"
systemctl: do not show SourcePath when FragmentPath cannot be found

Those files can be in a completely deferent format and also
arbitrarily long, and usually contain information about other
stuff. If we ever add SourceLine= or SourceLines= in addition
to SourcePath=, and can show the relevant information only, this
commit can be reverted.
shell-completion: systemctl cat

Also update -H help string to follow the binaries.
fix regression of read_full_file() in fileio.c

my e93c33d4aa broke this stupidly