working out a build system