Replace project_settings with providers.

Replaces dependency on the `project_settings` module and allows modules to be configured with a provider.
:+1: