core: Add NMUtilsIPv6IfaceId to nm-types.h

We'd like to use it in nm-platform.h, but it's included by
NetworkManagerUtils.h before the declaration occurs.
device: Don't enslave unmanaged devices

They don't notify of their removal as they don't transition to UNMANAGED
state in remove_device() and thus leave hanging in bridges despite the
actual device is gone. It's probably a good idea to ignore them altogether.
platform: Add support for IPv6 tokenized identifiers
cli: Add mode option for wifi connecitons

Only default (infrastructure) mode connections can be created and as it's not
possible to write mode=ap connections with ifcfg-rh plugins, they can't be
switched to mode=ap.
wifi: Use SSID from connection also if AP is not configured

Creating a mode=ap connection (as GNOME control center does) would otherwise
assert in complete_connection despite having a proper SSID set:

NetworkManager-wifi:ERROR:nm-device-wifi.c:1118:complete_connection: assertion failed: (ssid)
Aborted
device: Don't consider device with only LL address configured

LXC domains are given a veth interface that's up and has a LL address
upon their creation.
device: don't assume connection for veth interfaces

They're supposed to behave as Ethernet. Otherwise the LXC domains won't
be able to use their configured connections with the device.
cli: Fix getting/setting hostname

Create a client instance before it's used.

$ nmcli g hostname
(process:13615): GLib-GObject-CRITICAL **: g_object_get: assertion 'G_IS_OBJECT (object)' failed
connections: Listen on NMDevice::state-changed instead of notify::state

We need to be sure that NMDevice's properties are already up to date, as we're
accessing the active_connection from withing the signal handler.

https://bugzilla.redhat.com/show_bug.cgi?id=1149200
connections: Don't give up if we've not seen an active connection yet

It will appear later on.

https://bugzilla.redhat.com/show_bug.cgi?id=1149200
connections: The active connection state might already have progressed

Trigger the signal handler once when we hook it.

https://bugzilla.redhat.com/show_bug.cgi?id=1149200
core: move NMPlatformSource to nm-types.h

...and rename it while at it. It's going to be useful outside nm-platform,
to weight MTU options from various sources.
core: track origin of MTU

Only override MTU if it came from a source of higher priority or is of equal
priority but of lower value.
rdisc,device: set MTU if an appropriate option is present in a RA

https://bugzilla.gnome.org/show_bug.cgi?id=738104

Reported-by: Charles R. Anderson <cra@wpi.edu>
core: Use tokenized identifiers when constructing an address

We trigger a new solicitation upon seeing the new token. Kernel triggers one
too, but that one is of no use to us, since the advertisement might arrive sooner
than we learn about the token change.
build: Check for tokenized identifier support in libnl-route-3
platform: Refresh link cache when IPv6 tokenized identifier changes

Refactor the object comparison logic into a separate function. One from libnl
is not good enough (see comment).

Also, kernel currently won't send notifications on token change, a patch is
needed.
platform: Add support for IPv6 tokenized identifiers on Linux
Merge remote-tracking branches 'lr/lr-unmanaged-slaves', 'lr/lr-ipv6-tokens', 'lr/lr-ap', 'lr/lr-rdisc-mtu', 'lr/lr-rpm', 'lr/lr-lxc', 'lr/lr-hostname' and 'lr/lr-bond-activation' into integration