Rewrote the config to a more rigid state

Resolves sddm/sddm#39

More configuration instances now available. Every instance is a separate class.

Sections are supported.

Serialization handled in a more sensitive way - does not remove comments.

Type handling is unified, using the QTextStream shift operators.

Probably the most overengineered configuration parser you've ever witnessed.