Improved attribute handling in Graph.from_networkx #3432
This PR improves Graph.from_networkx in a number of ways. First of all it makes sure that non-scalar attributes and indexes (e.g. lists, tuples or dictionaries) do not break the Graph. Secondly this PR will allow passing in a dictionary of node positions which is the canonical way to specify node positions in networkx.