kcm: validate percent input correctly
previously we'd implicitly use the IntValidator but that would never consider the input acceptable because it gets the text input, not the value input (by design how the spinbox works -- textfield is the contentitem and the validator actually validates the textfield).
instead use a bespoke percent validator to validate the percent string input to be well formed and then forward a sanitized int to the qintvalidator base