Add create() override with shared_ptr<settings_provider>.