Bug 277513 [Compatibility] Remove WorkbenchFactory
The factory is currently used to call the e4 Workbench constructor, but it adds another layer of indirection that we don't need at this point in time. PW
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/Workbench.java
return app;
	}
	private void processPartContributions(Resource resource, MWindow mWindow) {
		IExtensionRegistry registry = RegistryFactory.getRegistry();
		String extId = "org.eclipse.e4.workbench.parts"; 
		IConfigurationElement[] parts = registry
				.getConfigurationElementsFor(extId);
		for (int i = 0; i < parts.length; i++) {
			MContributedPart<?> part = ApplicationFactory.eINSTANCE
					.createMContributedPart();
			part.setName(parts[i].getAttribute("label")); 
			part.setIconURI("platform:/plugin/" 
					+ parts[i].getContributor().getName() + "/" 
					+ parts[i].getAttribute("icon")); 
			part.setURI("platform:/plugin/" 
					+ parts[i].getContributor().getName() + "/" 
					+ parts[i].getAttribute("class")); 
			String parentId = parts[i].getAttribute("parentId"); 
			MPart parent = (MPart) findObject(resource.getAllContents(),
					parentId);
			if (parent != null) {
				parent.getChildren().add(part);
			}
		}
	}
	private EObject findObject(TreeIterator<EObject> it, String id) {
		while (it.hasNext()) {
			EObject el = it.next();
			if (el instanceof MApplicationElement) {
				if (el.eResource().getURIFragment(el).equals(id)) {