Bug 167450 [DataBinding] Get rid of bind support factory magic
I finally realized that we don't need that other magic factory. I'll move fillBindSpecDefaults() and the methods it calls (createConverter, createValidator etc) to a new class DefaultBindSpec. Clients who want default validators and converters created for them just create a DefaultBindSpec as opposed to a (rather empty) BindSpec. I will also move the early type checking into DefaultBindSpec to make it optional as well.
bundles/org.eclipse.core.databinding/src/org/eclipse/core/databinding/DataBindingContext.java
/**
	 * Disposes of this data binding context and all observable objects created
	 * in this context.
	 */
	public void dispose() {
		for (Iterator it = bindings.iterator(); it.hasNext();) {
			Binding binding = (Binding) it.next();
			binding.dispose();
		}
		for (Iterator it = childContexts.iterator(); it.hasNext();) {
			DataBindingContext context = (DataBindingContext) it.next();
			context.dispose();
		}
	}
	/**
	 * @param dataBindingContext
	 * @param bindSpec
	 * @param targetType
	 * @param modelType
	 */
	public void fillBindSpecDefaults(DataBindingContext dataBindingContext,
			BindSpec bindSpec, Object targetType, Object modelType) {
		if (bindSpec.getTargetValidator() == null) {
			bindSpec.setValidator(dataBindingContext.createValidator(
					targetType, modelType));
		}
		if (bindSpec.getPartialTargetValidator() == null) {
			bindSpec.setPartialTargetValidator(new IValidator() {
				public IStatus validate(Object value) {
					return Status.OK_STATUS;