topo: Only discover hosts on pending connections

This is a follow-up to e10798f, which stopped reading and writing from
the switch discovery state when discovering hosts. While host discovery
should not modify the pending port list, it should read from it and only
disocover hosts on pending ports, i.e., ports where a managed switch has
not yet been discovered. Discovering a host on such a port should not
take it down.

Host and switch discovery are conflating their state. This would be
separated in the future, but for now with the assumption that the entire
network is managed, this shold work fine.

Note that if you bridge wifi switches, this will probably break down as
well.