The idea is to move the build system out of the project tree as much as
possible. This has two benefits:
- it does not add any baggage to somebody who just wants to compile the
project, and doesn't want to create any new modules,
- it means that project trees don't have to be updated every time a
change is made to the module instantiation stuff.