core: fix require $XDG_RUNTIME_DIR

  $ sudo dracut -f
  Trying to run as user instance, but $XDG_RUNTIME_DIR is not set.
  /usr/lib/dracut/modules.d/98systemd/module-setup.sh: line 10:
    ((: >= 198 : syntax error: operand expected (error token is ">= 198 ")
bus: make bus_print_all_properties work for non machinectl cases

add a destination parameter and skip properties we can't read
machine: move symbols referenced by shared code from main to shared file

With --enable-address-sanitizer we get:
  machined-dbus.c:228: undefined reference to 'manager_add_machine'
build-sys: link most internal libraries statically

Libraries and tools, both use shared symbols wich have global state
and should only exist once in the final image.
machine: add missing header include
build-sys: don't install sd-shutdown.h, it is a drop-in header like sd-readahead.h
update TODO
pam: the DECIMAL_STR_MAX macro is awesome, let's use it
util: add circle to special chars we can draw
socket-proxyd: no need to redefine sockaddr union
api: replace manual C++ guards by macros
shutdown: as sd-shutdown.h is a drop-in header it should not include any other headers of ours
activate: print a nice message if no fd to listen on was specified
socket-proxy: actually properly keep track of connections
bus: message_append_basic() - allow string == NULL
bus: also check for NULL when appending trivial types
build-sys: add a make target to look for undocumented symbols

With super-pretty output!
man: add docs for sd_is_special() and some man page symlinks
rtnl: add Makefile symlink
bus: allow reading empty arrays with sd_bus_message_read_array()