networkd: netdev - rename 'enslave' to 'join'

Enslave only really makes sense when referring to bridges and bonds, so try to be
a bit more neutral.
networkd: netdev - split out bridge creation
networkd: netdev - rework load_one

We now:
 - parse config
 - match on environment
 - verify and complement config
 - create netdev
networkd: netdev - introduce vtable for netdev kinds

Split each netdev kind into its own .h/.c.
sd-dhcp6-client: make gcc happy

It complains about {max,init}_retransmit_time possibly being
uninitialized. It is wrong, but let's just initialize it.
sd-dhcp-server: make gcc happy

It complains about optoffset possibly being uninitialized. It is wrong,
but let's just initialize it.
test: network - skip if we don't have permissions to create netdevs
networkd: link - fix memory leak

Make link_initialized() idempotent to avoid taking refs on several udev_device
objects.
build-sys: don't move libgudev to /lib

It depends on libgobject and libgmodule which are installed in /usr/lib.
rules: updates to default device permissions in 50-udev-default.rules

Taken from the previous Debian specific rules, this is the remaining difference
over the upstream 50-udev-default.rules.
rules: load sg module from 80-drivers.rules

Taken from the Debian specific rules, this is the remaining difference over the
upstream 80-drivers.rules.

Bug-Debian: http://bugs.debian.org/657948
rules: set default polling interval on removable devices as well

The events_dfl_poll_msecs rule will not trigger if "block" is not a module, but
built in. This will avoid udisks etc. having to poll from userspace, and
provide proper ejection when the hardware eject button is pressed.

Bug-Debian: https://bugs.debian.org/713877
Bug-Ubuntu: https://launchpad.net/bugs/890592
rules: skip 99-systemd.rules when not running systemd as init
hwdb: store binary database in libdir, not in /etc

Storing huge binary files in /etc/ is ugly, as this is neither user-editable
nor configuration of any kind. This is just a cache file, and does not need
backing up.

Move it to udevlibexecdir instead.
tmpfiles: fix permissions of /run/lock and /run/lock/lockdev
units: order remote-fs.target after local-fs.target

This change was part of the old debianisation branch created by Tollef
and reflects the fact that on Debian the $remote_fs system facility
depends on $local_fs.
units: make it possible to disable tmp.mount using systemctl

But enable it by default in make install and systemd preset.
kmod-static-nodes: condition execution on kmod binary

Creating the list of dead device nodes requires kmod. Inside containers
this is not strictly required so we don't want a hard dependency on the
kmod package. If the binary does not exist kmod-static-nodes.service
will fail, so add a condition to check if the binary is available.
shared: include stdbool.h in mkdir.h
manager: avoid reload jobs when shutting down.

Doing so won't work and makes no sense.

See http://bugs.debian.org/624599 and http://bugs.debian.org/635777