Connected component subgraphs copy

Add option to copy (or not) subgraph data.
Rework connected components algorithms as generators.
Fix Floyd-Warshall when weights have 0 weight. Addresses #976.
Clarify comment in code regarding nan weights.
Remove normalization option to current_flow_closeness

Update docs
Fix failing test
Fix tests that fail due to hash randomization
Add example for sorting components by size
Make `nonedge` default to 0.0. Add more comments.
Clarify description of `weight` parameter.
Allow 'weight' to be callable.
For example, weight=lambda attrs: attrs.get('weight', 0).
Handle nonzero edges via masked arrays.
Also, allow custom multigraph_weight opertor functions.
Revert commits 1bca2d1 and 31b5b70.
Fix to follow PEP8

Fixed by using autopep8: `autopep8 --in-place --aggressive
pagerank_alg.py`. Looks like it mainly fixed spaces around operators,
and the use of two spaces before a comment.
Minor fixes in the docstrings
autopep8 on tests/test_pagerank.py
Add dangling_edge parameter to google_matrix
Fix import ordering
Add spaces to some multiline strings
Add a test for dangling nodes
Implement and test dangling nodes for pagerank