settings - tests and fixes

- added string settings type
- fixed tests previously commented out due to CI failures
- more tests for core settings functionality
- parsing of string values enhanced and extracted to a separate method
- setting value to nil when it equals default is back