Make Build.settings a cached_property

This will cache the property as long as the instance of the build object
lives, which will give one read of the yaml file instead of three during
Build.run_test().
Merge pull request #28 from tind/cached-settings

Make Build.settings a cached_property