public GraphElementContainer GetGraphElements(NodeContainer nodes)
        {
            this.MakeAdjactedBothWay(nodes);
            var paths = Graph.ExtractPaths(nodes);

            var container = new GraphElementContainer
            {
                nodes = nodes.Select(n => new GraphElement<Node> {data = n}).ToList(),
                edges = paths.Select(p => new GraphElement<GraphPath> {data = p}).ToList(),
            };

            return container;
        }