Bug 270989 Context refactoring
Based on discussions over the past weeks, I'm doing a refactoring of the context API. Major changes: - Renamed IComputedValue to IContextFunction - Renamed *Value to *Function - Renamed UIContextScheduler to UISchedulerStrategy - Added concept of ILookupStrategy to delegate lookup of keys that are not yet defined in a given context - Re-implemented OSGi service support using lookup strategy I also fixed a couple of NPE's I found while testing with the e4 photo demo (null realms, etc)
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/Workbench.java
windowHandler.setBounds(appWindow, wbw.getX(), wbw.getY(), wbw
				.getWidth(), wbw.getHeight());
		windowHandler.layout(appWindow);
		windowHandler.open(appWindow);
		windowHandler.runEvenLoop(appWindow);
		if (workbenchData != null && saveAndRestore && workbench != null) {
			try {
				System.err.println("Saving workbench: " 
						+ ((EObject) workbench).eResource().getURI());
				
				
				
				
				
				((EObject) workbench).eResource().save(null);
			} catch (IOException e) {
				
				e.printStackTrace();
			}
		}
		return rv;
	}
	/**
	 * Initialize a part renderer from the extension point.
	 * 
	 * @param registry
	 *            the registry for the EP
	 * @param r
	 *            the created renderer
	 * @param context