[DEVEXP 391] Add source info to build, buildConfig and eval a new build ...

@bparees @ironcladlou @pmorie @csrwng Please review
i know you didn't write it, and i know @csrwng is rewriting it in go, but this whole blog (starting at line 36) desperately needs some comments on what we're trying to do here and the various conditions (whether or not a context_dir was specified, source_ref, etc)