Refactor compositing config loading
Config loading is split in two groups: loading compositing config and loading the rest. They are loaded separately at different times. Some options are loaded in the Options constructor, some are loaded when compositing starts, some are loaded when the Workspace is created. It's not easy to keep track of what loads what and when.
This change simplifies option handling by loading all options in bulk and decouples Options from OutputBackend and GLPlatform to ensure that it can safely load options before kwin is fully operational.