sd-dhcp6-client: Add Option Request Option support

Provide a function to request more options from the DHCPv6 server.
Provide a sensible default set at startup and add test basic test
cases for the intended usage.

Define DNS and NTP related option codes and add comments for the
unassigned codes.
sd-dhcp6-lease: Add helper function to compute remaining expiry time

Create a helper function to compute the remaining time in seconds from
time T2 to the IPv6 address with the longest lifetime. The computed
time is used as the Maximum Retransmission Duration in Rebinding state.
See RFC 3315, section 18.1.4. for details.
sd-dhcp6-client: Implement Renew and Rebind

Start sending Renew and Rebind DHCPv6 messages when respective timers T1
and T2 expire. Rebind messages do not include a Server ID option and the
Rebind procedure ends when the last IPv6 address valid lifetime expires,
whereafter the client restarts the address acquisition procedure by
Soliciting for available servers.

See RFC 3315, sections 18.1.3. and 18.1.4. for details.
sd-dhcp6-client: Implement Rapid Commit

Add a Rapid Commit option to Solicit messages and expect a Reply to
be received instead of an Advertise. When receiving a DHCPv6 message
from the server in state Solicit, continue testing whether the
message is a Reply. Ease up the message type checking, it's not fatal
if the message is of a wrong type.

Add helper functions to set/get the rapid commit of a lease. See
RFC 3315, sections 17., 17.1.2., 17.1.4. and 18.1.8.
TODO: Add items for the DHCPv6 implementation
coredump: fix debug message

typo from 347272731e15d3c4a70fad7ccd7185e8e8059d01
coredumpctl: remove unused variable
coredump: make sure variable is set if uncompressed

reorder the code so the fstat is done before we can jump to
uncompressed
coredumpctl: fix potential deref of null pointer
libudev: fix udev_queue_get_queue_is_empty() logic
libudev: queue provide file descriptor to watch busy event queue
main: uid_to_name() might fail due to OOM, protect against that
coredump: add simple coredump vacuuming

When disk space taken up by coredumps grows beyond a configured limit
start removing the oldest coredump of the user with the most coredumps,
until we get below the limit again.
update TODO
coredump: fix how the compression level is verified
coredump: don't be annoyed if another coredump hook removes our coredump while we work on it
journald: invoking fstatvfs() is now redundant in the vacuuming code
coredump: don't expose the compression level as configuration option

This sounds overly low-level and implementation-detaily. Let's just
use the default level XZ suggests. This gives us more room to possibly
swap out the compression algorithm used, as the compression level range
will not leak into user configuration.
coredump: replace Compression= setting by simpler Compress= boolean setting

Let's move things closer to journald's configuration settings, which
knows Compress= already, as a boolean. This makes things more uniform,
but also gives us more freedom to possibly swap out the used compression
algorithm one day.
coredump: simplify compression logic a bit

This also make sure we remove the original coredump temporary file if we
successfully managed to compress the coredump.