Unit operations
current b is b's current unit. In the procedure of build unit that is the unit itself.
require_unit b u asks to build unit u in b. This fails the fiber if b is locked and u not part of the initial units.
Directories
val build_dir : t -> B0_unit.t -> B00_std.Fpath.tbuild_dir b u is the build directory for the build unit u. This is where u should write is build artefacts.
val root_dir : t -> B0_unit.t -> B00_std.Fpath.troot_dir b u is the directory of the B0 file in which u was defined. This is were unit relative paths like source files should be resolved.