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.
I take it it's not practical to break out the opennet-specific stuff to another function that takes an OpennetPeerNode?