Put in hooks to change build directory later

Although we didn't reach a clear consensus that the build macros should be put into a common project, I think there is enough perceived value in this to maybe implement some variant of it later. This changeset incorporates a skeleton of the changes made in the prototype so that this can easily be implemented in a fork or in later perhaps less durable projects that doesn't care about the build system.

In short it makes the location of the build system a variable, but only initialize it from the value of the current source tree and nowhere else (so it should work the same as before, it will *not* run amok if you install a different version of opm-core in some system directory)