Tweaks

This branch needs some real-world testing and code review. It focuses on improving performance. Changes include:

Do old pathfinding against the last closed ledger. This helps the server better re-use nodes that fault in during the process.

Rework handling of modified ledger nodes. This makes sure newly-created nodes are shared and cached.