Better handle misnamed secondary systems
Distinguish between "syntactic" primariness ("foo" vs "foo/bar" names) and "semantic" primariness (system foo in foo.asd vs system foo in bar.asd), and use the right one at all right place: when checking if a system is up-to-date, what matters is that the old primary system is at the same place as before, and is up-to-date. Thinking about it, there is a lingering bug in case a definition-dependency are up-to-date, but were modified after the definition was read. What is really needed is a prepare-define-op. Sigh.