def downstream(self, node):
        """ Returns a list of all nodes this node has edges towards.

        Args:
            node (str): The node whose downstream nodes you want to find.

        Returns:
            list: A list of nodes that are immediately downstream from the
                  node.
        """
        graph = self.graph
        if node not in graph:
            raise KeyError('node %s is not in graph' % node)
        return list(graph[node])