Initial skeleton.
Initial implementation.
Release v0.1.

Initial implementation.
Unused imports.
to_dict() can interpolate as intended.
Implement deep interpolation.

E.g. key: {some.nested.data} (where "some" can be found in a parent.
config['attr.path.here'] isn't a good thing.
Release v0.2.

Implemented deep interpolation.
Search for each key only once.
Deep-interp depends on standard Formatter.

I'd hoped to keep this customizable, but can't think of a simple, clean
way. May add it back in later if it's worth the work to support
something more complicated.
Make Configurate picklable.
"value: {{escaped}}" didn't work...

...because the formatter wasn't called if no interpolation variables
were detected, so it didn't get to unwrap the escaping.
to_dict recursion fix: interpolate must propagate
Configurate becomes mutable and learns to merge.
getattr param renamed consistently with setattr...

...which is itself consistent with the signature inherited from
"object".
Release v0.3.

Implemented merging and mutability.