Added IUIEngineSettings for more abstraction and validation