udev: export tags of "dead" device nodes to /run/udev/static_node-tags/

Based on a patch by Kay Sievers.

A tag is exported at boot as a symlinks to the device node in the folder
/run/udev/static_node-tags/<tagname>/, if the device node exists.

These tags are cleaned up by udevadm info --cleanup-db, but are otherwise
never removed.
logind: apply ACL's to "dead" device nodes

Based on a patch by Kay Sievers.

When a dead device nodes is tagged with "uaccess" using the static_node mechanism,
it's ACL's are managed by logind in the same way as "live" device nodes.

This allows in particular /dev/snd/{seq,timer} to cause modules to be loaded
on-demand when accessed by a non-privileged user.
logind-acl: use macros

Simplify by using FOREACH_DIRENT and _cleanup_closedir_ macros.
logind: remove "if (0)" left-over
update TODO
util: make some gcc versions shut up regarding unintialized variable access
util: make gcc shut up by passing a 0 mode param to open()

If we pass a variable to open()'s flags parameter it really wants a mode
parameter too, otherwise some gcc version whine. Hence, pass 0 in that
case.
journalctl: augment short mode with a cursor at the end

Two options are added: --show-cursor to print the cursor at the end,
and --after-cursor to resume logs on the next line after the previous one.
journalctl,systemctl: fix tiny memleak
Update TODO

This point was done in 77a9e8de6.
man: /usr/local/lib is searched for files too, mention it.
memory: Change structures to save some bytes on 32 bit architectures

ExecContext 228 -> 224 bytes
Cond	     22 ->  20 bytes
RFC: util: Avoid doing work on the string when it is not used

The routine is dominated by the fgets and not the code that is
moved around. Doing the work only for the lines that will be
used should be a small gain. Routines in the selinux-access.c
should probably query the gid and uid at the same time instead
of opening and parsing the file twice.
RFC: journald: Allow to cache the cg_get_root_path

Allow to cache the cg_get_root_path and introduce a new method
cg_pid_get_path_shifted_with_root that can use the cached version
instead of allocating a new string.
RFC: journald: Avoid reading /proc/PID/cgroup more than once per msg
disable notification to not bother people