Handle empty top-level parameters

If classes/applications/parameters are undefined, that's not an error.
Just make them empty collections.

Signed-off-by: martin f. krafft <madduck@madduck.net>
diff --git a/storage/yaml_fs/yamlfile.py b/storage/yaml_fs/yamlfile.py
index ee69b0a..2a8b21a 100644
--- a/storage/yaml_fs/yamlfile.py
+++ b/storage/yaml_fs/yamlfile.py
@@ -26,9 +26,21 @@
         fp.close()
 
     def _get_entity(self):
-        classes = datatypes.Classes(self._data.get('classes', []))
-        applications = datatypes.Applications(self._data.get('applications', []))
-        parameters = datatypes.Parameters(self._data.get('parameters', {}))
+        classes = self._data.get('classes')
+        if classes is None:
+            classes = []
+        classes = datatypes.Classes(classes)
+
+        applications = self._data.get('applications')
+        if applications is None:
+            applications = []
+        applications = datatypes.Applications(applications)
+
+        parameters = self._data.get('parameters')
+        if parameters is None:
+            parameters = {}
+        parameters = datatypes.Parameters(parameters)
+
         return datatypes.Entity(classes, applications, parameters)
     entity = property(lambda self: self._get_entity())