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.
tests/org.eclipse.jface.tests.databinding/src/org/eclipse/jface/tests/databinding/scenarios/PropertyScenarios.java
IObservableValue defaultLodgg =BeansObservables.observeDetailValue(realm, BeansObservables.observeValue(adventure,
        "defaultLodgg"), "description", Strg.class); 
        getDbc().bdValue(SWTObservables.observeText(text, SWT.Modify), defaultLodgg, null);
        
        assertEquals(adventure.getDefaultLodgg().getDescription(), text.getText());
        enterText(text, "foobar");
        assertEquals("foobar", adventure.getDefaultLodgg().getDescription());
        adventure.getDefaultLodgg().setDescription("barfoo");
        assertEquals(adventure.getDefaultLodgg().getDescription(), text.getText());
        
        adventure.setDefaultLodgg(SampleData.CAMP_GROUND);
        assertEquals(adventure.getDefaultLodgg().getDescription(), text.getText());
        adventure.getDefaultLodgg().setDescription("barfo");
        assertEquals(adventure.getDefaultLodgg().getDescription(), text.getText());
        adventure.setDefaultLodgg(null);
        assertEquals("", text.getText());
        adventure.setDefaultLodgg(SampleData.FIVE_STAR_HOTEL);
        assertEquals(adventure.getDefaultLodgg().getDescription(), text.getText());
        adventure.getDefaultLodgg().setDescription("barf");
        assertEquals(adventure.getDefaultLodgg().getDescription(), text.getText());
    }
    public void testScenario05() {