-add a struct ip_addr
-change route.gw to a struct ip_addr
modify usage of route.gw
add a small helper to copy ip addresses and use it
make get_single_ipv{4,6} work on struct ip_addr instead of a struct subnet