layout: Make `NodeRange` use `OpaqueNode` for memory safety.

These were stored in inline flows. This was caught by my WIP changes to
harden layout (yay for Rust!)

r? @larsbergstrom