Bug 174555 [DataBinding] Run validation on binding construction
When a binding is created the assumption is that the UI is synchronized with the model. This means that the UI should reflect the state of the model's validity as well. In order to ensure that the UI reflects the model's validity the consumer needs to force a copy to model on instantiation of every binding. We need to remove this requirement.
bundles/org.eclipse.core.databinding/src/org/eclipse/core/databinding/DataBindingContext.java
*/
	public Binding bindValue(IObservableValue targetObservableValue,
			IObservableValue modelObservableValue, BindSpec bindSpec) {
		if (bindSpec == null) {
			bindSpec = new DefaultBindSpec();
		}
		Binding result = new ValueBinding(targetObservableValue,
				modelObservableValue, bindSpec);
		result.init(this);
		return result;
	}
	/**
	 * Binds two observable lists using converter and validator as specified in
	 * bindSpec. If bindSpec is null, default converters and validators as
	 * defined by {@link DefaultBindSpec} will be used.
	 * <p>
	 * The phases performed for a list binding occur in the following order for
	 * each event: {@link BindingEvent#EVENT_COPY_TO_MODEL} and
	 * {@link BindingEvent#EVENT_COPY_TO_TARGET}:
	 * <ol>
	 * <li>{@link BindingEvent#PIPELINE_AFTER_GET}</li>
	 * <li>{@link BindingEvent#PIPELINE_BEFORE_CHANGE}</li>
	 * <li>{@link BindingEvent#PIPELINE_AFTER_CHANGE}</li>
	 * </ol>
	 * Multiple validators are honored for every phase except
	 * <code>BindingEvent.PIPELINE_AFTER_CHANGE</code> (it doesn't make sense
	 * to validate after the change is applied). Validators will be invoked in
	 * the order that they are added and a failure in validation will terminate
	 * pipeline processing. The provided validation status will be propagated to
	 * {@link Binding#getValidationStatus()} and