ConfigCodec
Encodes and decodes a typed configuration object.
Design note
The codec is separated from the store to avoid committing KTale to a specific format (YAML/TOML/JSON), while still enabling typed config objects.
Codecs can be replaced without changing plugin code that uses ConfigKey.