Bug 331582 binding context processing should be done in binding Contexts addon
org.eclipse.e4.ui.model.application.commands.MBindings.getBindingContexts() is currently processed in E4Workbench but should be done by the binding contexts model processing add on, and should add the event broker to listen to additions. PW
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/E4Workbench.java
public static final String MODEL_RESOURCE_HANDLER = "modelResourceHandler"; 
	public static final String RENDERER_FACTORY_URI = "rendererFactoryUri"; 
	public static final String CLEAR_PERSISTED_STATE = "clearPersistedState"; 
	public static final String DELTA_RESTORE = "deltaRestore"; 
	IEclipseContext appContext;
	IPresentationEngine renderer;
	MApplication appModel = null;
	public IEclipseContext getContext() {
		return appContext;
	}
	public E4Workbench(MApplicationElement uiRoot, IEclipseContext applicationContext) {
		appContext = applicationContext;
		appContext.set(IWorkbench.class.getName(), this);
		if (uiRoot instanceof MApplication) {
			appModel = (MApplication) uiRoot;
		}
		if (uiRoot instanceof MApplication) {
			init((MApplication) uiRoot);
		}
		
		((Notifier) uiRoot).eAdapters().add(new UIEventPublisher(appContext));
	}
	/**
	 * @param renderingEngineURI
	 * @param cssURI
	 * @param cssResourcesURI
	 */
	public void createAndRunUI(MApplicationElement uiRoot) {
		
		instantiateRenderer();