TryGhost/Ghost — pull request #1569 by hswolff (2013-11-26 03:50:18+00:00)
Title: Restore support for using ghost as a npm module fixes #1326

This resolves the issues we faced when I first implemented supporting ghost as a module.

This pushes all packages to delegate to `./core/server/config` when they need to access the config.js environment object.

The only weird thing exists in `./core/server/config/index.js` where I have an || statement that uses a require statement to fetch the config.js file. This was required because it seems that grunt runs each task in their own process. So when `grunt loadConfig` is executed, it creates the `config.js` if it needs to. However when the mocha tests are then run the cached config object no longer exists. Hence the need for the odd require statement. I added a comment there to explain why it's there as well.

Aside from that everything else in this should be straightforward.

Looking forward to feedback :).