Fix nested dict merges where None appear on one side
diff --git a/reclass/datatypes/parameters.py b/reclass/datatypes/parameters.py
index c96a67d..f9f116c 100644
--- a/reclass/datatypes/parameters.py
+++ b/reclass/datatypes/parameters.py
@@ -122,13 +122,17 @@
         else:
             values = ValueList(Value(cur, self._settings, self._uri), self._settings)
 
-        if isinstance(new, Value):
+
+        value_list = isinstance(new, ValueList) or isinstance(cur, ValueList)
+
+        if not value_list and (new.contents() is None or new.contents() == cur.contents()):
+            return cur
+        elif isinstance(new, Value):
             values.append(new)
         elif isinstance(new, ValueList):
             values.extend(new)
         else:
             values.append(Value(new, self._settings, self._uri))
-
         return values
 
     def _merge_dict(self, cur, new, path):
@@ -178,7 +182,7 @@
         """
 
 
-        if cur is None:
+        if cur is None or str(cur) == 'None':
             return new
         elif isinstance(new, dict) and isinstance(cur, dict):
             return self._merge_dict(cur, new, path)