Refactor node lookups to support multiple nodes with same name

To support IO performant seamless transcoding that always utilizes the
page cache, we want fuse_lookups to return different nodes for the same
file depending on the media capabilities.

This cl refactors the logic for the following node operations:
1. LookupChildByName (Allows matching on more parameters than just name)
2. Rename (Use the parent node to capture all nodes matching name)
3. Unlink (Similar to rename)

To support multiple nodes matching the same name but differing by some
other parameters to be introduced.

For now, this change should be a no-op in behavior

Test: atest fuse_node_test && fsstress for ~1week
Bug: 158466177

Change-Id: Ifc9e8f1b14db401a54080ea6367dbb117872f3d4
3 files changed