If we continue work on this functionality, make this private.

And expose a `.getSettings()` method.