a build's configuration can declare needed inputs

the new `inputs` field specifies a list of input names and, optionally,
destination paths. this replaces the previous `paths` configuration.

if any listed inputs are not present, the build will error. extra inputs
are not an error; they are streamd in under the default location (their
name).

[#80072360]