Example: settings through Viper

An application's own settings written in xcl and read through Viper, into plain Go structs that know nothing about xcl.

More than settings?

When the configuration describes things to create, xcl applies it with providers, keeps state and works out what changed.