Add support for public configuration

I've included some samples in the tests dir.  This goes against the grain with what I've seen in with the rest of the tests, where test fixtures are generated and destroyed.  IMO it is much easier to understand how configurator works when there are tangible examples.

As for the implementation, I decided to go with a file called `public-data.json` in app config.  This information is totally different and unlike the other config files, so I thought it appropriate if it's unlike the others.

ping @stefanor