Bug 304239 move each core application service to its own package
In M4, some services have their own package, others are provided in core.services. Boris and I talked about moving each service (API) to its own package. Reasons are: - aids with discoverability - helps separate application services from other public API in the core.services package (such as IDisposable, JSONObject) - helps to emphasize that services can be setup and consumed individually - will make it easier to move to separate bundles if that is ever needed This means moving Adapter, Logger, IStatusHandler to their own packages.
bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/workbench/swt/internal/PartRenderingEngine.java
.get(IContributionFactory.class.getName());
					MContribution contribution = (MContribution) element;
					Bundle bundle = contributionFactory.getBundle(contribution
							.getURI());
					strategy = new BundleContextStrategy(bundle);
				} else {
					strategy = null;
				}
				IEclipseContext lclContext = EclipseContextFactory.create(
						parentContext, strategy);
				populateModelInterfaces(ctxt, lclContext, element.getClass()
						.getInterfaces());
				ctxt.setContext(lclContext);
				
				
				for (String variable : ctxt.getVariables()) {
					lclContext.declareModifiable(variable);
				}
				for (Entry<String, String> property : ctxt.getProperties()) {
					lclContext.set(property.getKey(), property.getValue());
				}
				E4Workbench.processHierarchy(element);
			}
		}
		
		if (element.getWidget() != null) {
			if (parent instanceof Composite
					&& element.getWidget() instanceof Control) {
				
				final Composite p = (Composite) parent;