base_filesystem_create: do not try to create "/root" if it exists

The check, if the directory/file already exists is only executed, if
there is a symlink target specified. In case of "/root", there is none,
so it is unconditionally tried to create the directory.

In case of a readonly filesystem, errno != EEXIST, but errno == EROFS,
so base_filesystem_create() and switch_root does not succeed.

This patch checks for existance not only in the symlink case.
initrd-parse-etc.service: ignore return code of daemon-reload

It seems the return code of systemctl daemon-reload can be !=0 in some
circumstances, which causes a failure of the unit and breaks booting in
the initrd.
update TODO

Yum was creating <container>/var/run/yum.pid and hence this directory
was created before filesystem package could create the symlink
/var/run -> /run.
This should be now fixed in yum.
base-file-system: always generate error messages locally

Functions either should generate error messages for everything they do
themselves, or for nothing and let the caller do it. But they certainly
shouldn't generate errors for some messages but not for others. Since
the function in this case is one that generates messages on its own, it
really should do that for everything, not just for some things, hence.
update TODO
man: two fixes, reported on irc by 'wget'
build-sys: configure option to disable hibernation
localed: double free in error path and modernization

Very unlikely to trigger, but in principle strv_free
could be called twice: once explictly, and once from cleanup.
localed: remove free_and_copy

It was mostly a duplicate of free_and_strdup().
localed: log locale/keymap changes in detail

Converting X11 to legacy keymaps and back is a fucking mess. Let's
make it at least possible to request detailed logs of what is being
changed and why (LOG_DEBUG level).

At LOG_INFO level, we would log the requested change of X11 or console
keymap, but not the resulting change after conversion to console or X11.
Make sure that every change of configuration on disk has a matching
line in the logs.
localed: introduce helper function to simplify matching
localed: check for partially matching converted keymaps

If a user specifies multiple X11 keymaps, with a (at least the first
one) nonempty variant, and we don't match the whole combo, use
a converted keymap which includes the variant in preference to
the default, variantless, keymap.

E.g.: We would convert X11 config "layout=fr variant=mac" to "fr-mac",
but "layout=fr,us variant=mac," to "fr", because we don't have a
converted keymap which would match "fr,us", and we don't have a legacy
mapping for "fr,us". This is unexpected, and if we cannot match both,
it is still better to match the primary mapping and use "fr-mac".
systemd: fix argument ordering in UnsetAndSetEnvironment

Fixup for v208-615-g718db96199.
man: fix typo
Update TODO
networkd: move carrier gained/lost handling from link_update_flags() to link_update()

This allows us also to simplify link_has_carrier() a bit.
networkd: link - save link flags when the link is added

Don't wait for the link to be fully synchronised.
networkd: link - do not manage loopback links

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=83134.
networkd: link - clarify log message when receiving address for unknown link
build: don't install busname units and target if kdbus support is disabled