A filesystem driver is a context struct with methods; the traits below
name them. Vfs::mount / mount_ro build the VfsOps table from those
methods at compile time (one thunk per method, instantiated for the
driver's type), so a driver writes no function table of its own:
The mounted driver's entry points, type-erased so one Vfs holds drivers
of different context types. Built by Vfs::mount / mount_ro; a null
entry (a read-only mount's write/unlink/mkdir) makes that call fail.
(See std/erased.h: ctx is the driver's &F.)