nhops: split nh_family into nh_upper_family and nh_neigh_family.
With IPv4 over IPv6 nexthops and IP->MPLS support, there is a need
to distingush "upper" e.g. traffic family and "neighbor" e.g. LLE/gateway
address family. Store them explicitly in the private part of the nexthop data.
While here, store nhop fibnum in nhop_prip datastructure to make it self-contained.
Approved by: re(gjb)
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D33663
(cherry picked from commit 823a08d7403c475fea0ecbbfff021fa8db274879)
(cherry picked from commit 519bdbb448ddc176c856db14fa90d6c4ba720c8d)