Allow a constraint to adjust a widget's hints.

This ensures that if we know a label will, for example, be fixed to width W
that we don't pass some actual width that's way bigger than W, but rather we
pass W and let the label know that it needs to wrap within that width.