allow {} for value, since {}.blank? == true

there may be a better way to handle this, but without something like this, one can't remove (set to nil) the last key in the hash (e.g. reset all settings for key to defaults).