Improve messaging for conflict errors

Previously conflict errors looked something like this:

    Activated a-2 via:
      a-2 (= 2)
    instead of (= 1) via:
      user request (gem command or Gemfile)

This is very difficult to read and I do not know what is going on here.

Now the conflict errors look like:

    Activated a-2
    which does not match conflicting dependency (= 1)

    Conflicting dependency chains:
      a (= 2), 2 activated

    versus:
      a (= 1)

Which I find much easier to read as I can tell what is going on now.

Part of #944
Add #952 to History