Added Yaml-based config system that doesn't expose the underlying structure. Also added a unit testing project.