Strongly Connected Components only on directed graphs

This modifies strongly_connected_components and its variants to only operate
on directed graphs. This is more consistent with its definition. Also adds
tests to ensure the correct assertions are raised.
Merge pull request #837 from bjedwards/master

Error on undirected graph for strongly_connected_component functions.