The "import dep files" logic needed to be moved into a separate function
RequiresWhenUnmet

Sometimes the effects of a child dep are only required by the parent's
meet block, so it doesn't need to run if the parent's dep is already
met.
a small refactor which turned large