progress reimplementing ConfigBuilder