Recursive pkgconfig.path on Mac/Homebrew

Before, we would set the pkgconfig.path variable on Mac/Homebrew to look
for .pc files in the package-specific directories in the Homebrew
prefix's opt directory.  This ensures that we can find any keg-only
dependencies.  Turns out this is not enough; we need to do that
recursively for any dependency reachable from the current package, not
just for its direct dependencies.
Package slugs

The new `package_slug` variable is used to give a unique name to each
place that we learn about a package from.  This is used to construct the
work directory for a particular package.  This ensures that if we try to
build a package from two different places (e.g., from a git clone
managed by Buzzy, or from a working copy that belongs to the user), we
end up with different work directories.
Merge branch 'feature/recursive-deps' into develop

* feature/recursive-deps:
  Recursive pkgconfig.path on Mac/Homebrew