Move check for succeeded input builds

The check for succeeded builds used to happen at definition time, but has been
moved to build time so that a new DE model can be defined before its input
builds have succeeded.