Factor out `getBuildIdentifier` and add option for relativizing paths
comment
Use source paths relative to packages dir in build ids
Add builtBy to build id
Clean up direct deps vs. plugin-providing direct deps.

Unipackage always has all direct deps now, but `checkUpToDate` and
`getBuildIdentifier` only consider the set of direct deps that provide
plugins.

Catalog versions now get updated during initialization, so after the
catalog is initialized, you can look up versions that include build ids.