Turn dependency dupes into errors

We see a bunch of dupes pop up in dependency lists in our internal repos. Often they go unnoticed by whoever should be fixing them. They also make each parsing of the build graph quite noisy for the rest of our users.

This branch turns those warnings into errors. That ought to ensure they're caught early by whoever added the duplicate dependency and they won't hit master.

Testing Done:
ci.sh passes
tested against a dependency list with dupes

Reviewed at https://rbcommons.com/s/twitter/r/1332/
Clean pants script which used "build"

Clean pants script which referred to "build"

[tw-172-25-146-131 pants]$ UNSET PANTS_DEV
[tw-172-25-146-131 pants]$ build-support/python/clean.sh && ./pants
Building pants.pex to /Users/tdesai/projects/pants/pants.pex...
Pants build missing a command: None

*** Pants bootstrapping failed.
[tw-172-25-146-131 pants]$

Testing Done:
yes
./pants now works.

I can add this in CI if required.

Reviewed at https://rbcommons.com/s/twitter/r/1335/
Fix nasty BuildGraph bug