Add `bNode::index()` to allow accessing node indices directly without manually
de-referencing the runtime struct. Also adds some asserts to make sure the access
is valid and to check the nodes runtime vector.
Eagerly maintain the node's index in the tree so it can be accessed without
relying on the topology cache.