Refactor: Extracting a interface for the preferences