The new build system supports using a build tree separate from the
source tree, which makes it easier to build for multiple targets
using a single source tree. It also factors out the means for specifying
the modules to be built and the source files that comprise those
modules into simple files named Modules.mk. This is intended to
make it easier to add support for separate hardware table modules in
an upcoming commit.