Error on undirected graph for strongly_connected_component functions.

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.