Refactoring: Using literal syntax.
A few code simplifcations.
Some formatting.
Cast for explicit values.
More bugfixing: Initial selection could still lead to dirty markers if value was non existing.
Thus could not be compared to the new value.
These default values as non existing keys are a problem and need to be adressed.