XIA/U4ID: let a local entry be tunnel source

Instead of creating a separate tunnel socket, we can let the network
manager choose a local entry to also be the tunnel socket. This
avoids the problem of forcing all network containers to have a
tunnel socket.

To allow the user to do this, we add fields xfc_protoinfo and
xfc_protoinfo_len in struct xia_fib_config for general protocol
data and data length. We could have added specific fields (like
those for lladdrs), but two booleans for setting up
a U4ID tunnel is too special of a case to warrant unique fields.
Also, there may be more principals with unusual routing table requests
in the future, so a field for general data will be useful.