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 think that convention doesn't cleanly apply to class names, PeerNode's at least has PeerNode as a whole word so you can e.g. search for it. But I'll go with it. :(