Bug 290964 Factor out model loading from Workbench so that it is plugable
We want to support different workbench restoreing possibilities and for this we need to delegate the loading to an external instance
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/Workbench.java
}
		}
	}
	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)) {
					return el;
				}
			}
		}
		return null;
	}
	private void init() {
		Activator.trace(Policy.DEBUG_WORKBENCH, "init() workbench", null); 
		
		workbenchContext.set(MApplication.class.getName(), workbench);
		workbench.setContext(workbenchContext);
		
		Activator.trace(Policy.DEBUG_CMDS, "Initialize service from model", null); 
		ECommandService cs = (ECommandService) workbenchContext
				.get(ECommandService.class.getName());
		Category cat = cs.getCategory(MApplication.class.getName());
		cat.define("Application Category", null); 
		EList<MCommand> commands = workbench.getCommands();
		for (MCommand cmd : commands) {
			String id = cmd.getId();
			String name = cmd.getCommandName();
			Command command = cs.getCommand(id);