bgpd: divorce router-id logic from CLI & zebra

Logic for determining the router-id was spread out over bgp_zebra.c and
bgp_vty.c.  Move to bgpd/bgpd.c and have these two call more properly
encapsulated functions.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
diff --git a/bgpd/bgp_zebra.h b/bgpd/bgp_zebra.h
index e69a0bc..2565158 100644
--- a/bgpd/bgp_zebra.h
+++ b/bgpd/bgp_zebra.h
@@ -24,6 +24,7 @@
 #define BGP_NEXTHOP_BUF_SIZE (8 * sizeof (struct in_addr *))
 
 extern struct stream *bgp_nexthop_buf;
+extern struct in_addr router_id_zebra;
 
 extern void bgp_zebra_init (struct thread_master *master);
 extern void bgp_zebra_destroy (void);