sd-rtnl: link flags - don't allow change = 0

The kernel will happily treat 0x0 as 0xffffffff, but it is for backwards
compatibility only, so let's not perpetuate this.
sd-rtnl: message_open_container - don't take a 'size' argument

We can always know the size based on the type, so let's do this inside the library.
sd-dhcp-client: explicitly handle raw and udp messages

Split the recevie_message callback into _raw and _udp parts and a generic
DHCPMessage handler.

Also always verify the xid/MAC, rather than only for udp messages.
sd-dhcp: minimum options size is part of the protocol
sd-rtnl: always include linux/rtnetlink.h
sd-dhcp: network - don't hardcode ports

We want to reuse these functions for the server library too.