Computes the strongly connected components of a directed graph