Added constraints

Constrained CycleCheck, Bipartite, and ConnectedComponents to undirected
graphs.

Added DirecetdMultSourceDFS
Updates and fixes

Constraint some algorithms to undirected graphs for now.

Updated CycleCheck for parallel edges and self-loops