Really do not disable the default route on editing (bnc#883836#c15)

The first fix removed defaulting the internal value to `false` but missed
that the serializer interprets anything other than `true` as "no".
Now we treat both the text and the boolean as tri-state:
  yes, no, don't touch.
test SetDeviceVars SetS390Vars
Match `wicked` interpretation of values other than yes/no.
Refactored away GetDeviceVar
test wl_key
Refactor wl_key
Test wl_wpa_eap
Refactor wl_wpa_eap
Fixed an older test: "no" is too strict.
Merge branch 'master' into default-route
version + changelog
Test the default route fix (bnc#883836#c15).
fixes after review

- use #empty?
- use a constant
- dont use #before, set vars explictly
- slightly better tests for wl_key, wl_wpa_eap
Merge branch 'master' into default-route

Adjusted version + changes
use the implicit subject
default_route_test: improved description
Merge branch 'master' into default-route
document LanItems.SetDeviceVars better
use a more common indentation style

Emacs: M-x customize-option, ruby-deep-indent-paren, remove ?\[ ?\]
Replace Builtins.tointeger

Even though Builtins.tointeger and String#to_i differ very much,
the valid input (0 1 2 3) is handled the same;
"" will become 0 instead of nil which is actually better;
nil cannot happen because @SysconfigDefaults has "0".