routing: provide a valid MTU in route messages

Right now we send route messages with MTUs zeroed out. This can lead
to the following assert in ip_output.c (~line 308) triggering:

    KASSERT(mtu > 0, ("%s: mtu %d <= 0, rte=%p (rt_flags=0x%08x) ifp=%p",
        __func__, mtu, rte, (rte != NULL) ? rte->rt_flags : 0, ifp));

This happens because the code will assume that if there is a valid route, that
route will have a valid MTU. And in this case, will always use the route MTU
instead of the interface one.

When we allocate the route it has a valid MTU. But when we send the route
message, we will overwrite it with the value we see in the route message.  This
is done in rtsock.c:rt_setmetrics.

With this patch, those assertion stops happening.

A note: this wasn't been seen in local instalations, only on EC2. Looking at
it, there is nothing Xen specific. The reason it was not happening on local, is
that local traffic does not go through the default route, but rather through
the local 192.168.100.0/24 route. That one seems to take a different
configuration path, and thus sets the MTU correctly.