StringConverter: Make value a property

This is way cleaner. The list is still created lazily because it might
not be needed and is non-performant compared to the rest of the value
preparation.
StringConverter: Be more verbose on errors
Setting: Make key a property

This makes Setting more robust against changing the key value. E.g. if
someone would have changed the key to an empty one before there wouldnt
be an error.
Settings: Catch IndexError only

This is cleaner since unrelated errors get through.
Add AnalyzerRunProcess (WIP)