Make the exception throw be more explicit about what cycles exist.

Calling GetLoadOrder throws an exception if there are cycles but provides absolutely no information as to what these are.

This manifests itself in ripple as 

mono ripple/src/ripple/bin/Debug/ripple.exe describe-graph
Trying to read a Ripple SolutionGraph from /home/alistair/Projects/fubu
ERROR: System.InvalidOperationException: This graph has dependency cycles and cannot be ordered!

this patch means that we would now get

mono ripple/src/ripple/bin/Debug/ripple.exe describe-graph
Trying to read a Ripple SolutionGraph from /home/alistair/Projects/fubu
ERROR: System.InvalidOperationException: This graph has dependency cycles and cannot be ordered!
The following cycles exist:
bottles->FubuMVC.Core.Assets->fubumvc->FubuCsProjFile