Raise user friendly errors in case of Cyclic Dependency

Fixes #2506
Changed cyclic dependency error message

Also change raise code to be inline with current
convention.
Extract error message from TSort::Cyclic and print

Also updated test case to include check on error message
Extract the mutually dependent gems from error message

On MRI and Ruby 1.9 error message pattern looks very
different from what we see on JRuby and other versions of
Ruby.
clarify circular language
Merge pull request #2564 from bundler/detect-cyclic-dependency

Raise user friendly errors in case of Cyclic Dependency