Recurse classes defined in class_mappings

Class mappings produce a list of classes. Obviously, this list needs to
be iterated and each class recursed too.

Closes: https://github.com/madduck/reclass/issues/16
Signed-off-by: martin f. krafft <madduck@madduck.net>
diff --git a/reclass/storage/__init__.py b/reclass/storage/__init__.py
index 93bab51..0151641 100644
--- a/reclass/storage/__init__.py
+++ b/reclass/storage/__init__.py
@@ -119,8 +119,11 @@
 
     def _nodeinfo(self, nodename):
         node_entity = self._get_node(nodename)
-        merge_base = self._populate_with_class_mappings(node_entity.name)
-        ret = self._recurse_entity(node_entity, merge_base,
+        base_entity = self._populate_with_class_mappings(node_entity.name)
+        seen = {}
+        merge_base = self._recurse_entity(base_entity, seen=seen,
+                                          nodename=base_entity.name)
+        ret = self._recurse_entity(node_entity, merge_base, seen=seen,
                                    nodename=node_entity.name)
         ret.interpolate()
         return ret