Implement options scope name deprecation.
Review Request #3884 - Created May 13, 2016 and submitted
|jsirois, stuhood, zundel|
Allows an Optionable to specify that its current scope is
a new name for an older, deprecated scope.
Takes option values from both scopes, with the usual ranked value
logic (the deprecated scope wins on rank ties), but issues a warning
if any values were explicitly specified on the old scope.
Note: Removes an update() method on OptionValueContainer that is not
used afaict. Adds instead an augment() method with ~similar semantics,
but that takes an OptionValueContainer instead of an attr dict.
I might rename augment -> update once I have a clean CI that proves
that the old update() was indeed not used.
CI passes: http://jenkins.pantsbuild.org/job/pantsbuild/job/pants/branch/PR-3430/