Don't add duplicate constraints

This now updates `addConstraint` so that it overwrites duplicated
constraints with the target dependency `cabal-add` is trying to add.

It's far from ideal, but better than adding duplicated dependencies.