Duplicate valuations

Added controls for duplicate valuations: either it's allowed
completely, disallowed completely, or disallowed at the max level
only (so I can't max-value the same item and another item).
Sufficient infeasible condition

Added very loose sufficient condition check for infeasibility, in
bounds.py