I would've preferred to just go with 4-spaces for indent and no tabs,
but lao is a bit conservative about it. :^)
Still, this is a ton better than mixing different styles all over the
place, especially within the same file.
* There's no distinction between "temp" and "perm" nodes anymore.
All nodes are allocated with 1 reference belonging to the
vfs_alloc() caller.
* VFSNode pointers retrieved by any API that returns one (most
notably vfs_locate) are guaranteed to have exactly one reference
belonging to the caller. What this means is that you must always
decref them when you're done using them.
If you're implementing such an API (e.g. a custom locate), remember
to incref any persistent nodes you return.
* Passing a VFSNode* to anything that successfully consumes one (for
example, vfs_mount) transfers ownership of the reference to the
consumer. In other words, consumers do not incref your nodes, but
they will decref them once they don't need them anymore. If you want
to keep the node around, then you must incref it first.
* Bunch of other stuff.
"Ownership" is an abstract concept in this context. Basically it just
means "cleanup responsibility".