Read lazy dependency list and build graph.

def build_graph(self):
        """
        Read lazy dependency list and build graph.
        """
        for child, parents in self.dependencies.items():
            if child not in self.nodes:
                raise NodeNotFoundError(
                    "App %s SQL item dependencies reference nonexistent child node %r" % (
                        child[0], child),
                    child
                )
            for parent in parents:
                if parent not in self.nodes:
                    raise NodeNotFoundError(
                        "App %s SQL item dependencies reference nonexistent parent node %r" % (
                            child[0], parent),
                        parent
                    )
                self.node_map[child].add_parent(self.node_map[parent])
                self.node_map[parent].add_child(self.node_map[child])

        for node in self.nodes:
            self.ensure_not_cyclic(node,
                                   lambda x: (parent.key for parent in self.node_map[x].parents))