Split opennet routing table into short links and long links (refactored)

This is similar to split-opennet-routing-table-original, which is better tested, but cleaned up history and with some minor opennet refactoring included. It does appear to work.
Because we can't change the method signature. If it's an old opennet peer, then it must be an OpennetPeerNode, but otherwise it could be any kind of PeerNode.