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.jface.databinding/src/org/eclipse/jface/databinding/viewers/OrderedTreeNode.java
public Object getParent() {
		return parent;
	}
	/**
	 * @return
	 */
	public Set getParents() {
		if (parents == null) {
			if (parent == null) {
				return Collections.EMPTY_SET;
			} else {
				return Collections.singleton(parent);
			}
		} else {
			return parents;
		}
	}
	/**
	 * Called when the child set changes. Should not be called directly by the
	 * viewer.
	 */
	public void handleListChange(IObservableList source, ListDiff diff) {
		boolean shouldHavePendingNode = children.isEmpty()
				&& children.isStale();
		List removals = new ArrayList();
		ListDiffEntry[] differences = diff.getDifferences();
		for (int i = 0; i < differences.length; i++) {
			ListDiffEntry diffEntry = differences[i];
			if (diffEntry.isAddition()) {
				contentProvider.insert(element, diffEntry.getElement(),