nss-myhostname: move local address listing logic into shared, so that we can make use of it from machined
shared: split out in_addr related calls from socket-util.[ch] into its private in-addr-util.[ch]

These are enough calls for a new file, and they are sufficiently
different from the sockaddr-related calls, hence let's split this out.
libsystemd: make use of our common sockaddr_union everywhere
machined: when querying addresses of a container, use same code as nss-myhostname uses
networkd: always prefer dhcp routes over ipv4ll routes