diff --git a/examples/_releng/rcpdemo2/feature/.project b/examples/_releng/rcpdemo2/feature/.project
new file mode 100644
index 0000000..6477fcb
--- /dev/null
+++ b/examples/_releng/rcpdemo2/feature/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.statet.rj.example.rcpdemo2-feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>
diff --git a/examples/_releng/rcpdemo2/feature/build.properties b/examples/_releng/rcpdemo2/feature/build.properties
new file mode 100644
index 0000000..4fc35c8
--- /dev/null
+++ b/examples/_releng/rcpdemo2/feature/build.properties
@@ -0,0 +1,2 @@
+bin.includes= feature.xml,\
+              feature.properties
diff --git a/examples/_releng/rcpdemo2/feature/feature.properties b/examples/_releng/rcpdemo2/feature/feature.properties
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/examples/_releng/rcpdemo2/feature/feature.properties
diff --git a/examples/_releng/rcpdemo2/feature/feature.xml b/examples/_releng/rcpdemo2/feature/feature.xml
new file mode 100644
index 0000000..aee2717
--- /dev/null
+++ b/examples/_releng/rcpdemo2/feature/feature.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.statet.rj.example.rcpdemo2"
+      version="3.0.0.qualifier"
+      label="StatET RJ - RCP Demo 2"
+      provider-name="Eclipse.org"
+      license-feature="org.eclipse.license"
+      license-feature-version="2.0.2">
+
+   <description url="http://www.eclipse.org/statet">
+      RCP App using StatET RJ
+   </description>
+
+   <copyright>
+      Copyright (c) 2003, 2018 Stephan Wahlbrink and others. All rights reserved.
+   </copyright>
+
+   <license url="%licenseURL">
+      %license
+   </license>
+
+   <requires>
+      <import feature="org.eclipse.statet.rj.eclient" version="3.0.0" match="equivalent"/>
+   </requires>
+
+   <plugin
+         id="org.eclipse.statet.rj.example.rcpdemo2"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+</feature>
diff --git a/examples/_releng/rcpdemo2/product/.project b/examples/_releng/rcpdemo2/product/.project
new file mode 100644
index 0000000..930a3d6
--- /dev/null
+++ b/examples/_releng/rcpdemo2/product/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.statet.rj.example.rcpdemo2-product</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+	</buildSpec>
+	<natures>
+	</natures>
+</projectDescription>
diff --git a/examples/_releng/rcpdemo2/product/build.properties b/examples/_releng/rcpdemo2/product/build.properties
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/examples/_releng/rcpdemo2/product/build.properties
diff --git a/examples/_releng/rcpdemo2/product/rcpdemo.product b/examples/_releng/rcpdemo2/product/rcpdemo.product
new file mode 100644
index 0000000..a6bda91
--- /dev/null
+++ b/examples/_releng/rcpdemo2/product/rcpdemo.product
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+<!--
+ #=============================================================================#
+ # Copyright (c) 2009, 2018 Stephan Wahlbrink and others.
+ # 
+ # This program and the accompanying materials are made available under the
+ # terms of the Eclipse Public License 2.0 which is available at
+ # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
+ # which is available at https://www.apache.org/licenses/LICENSE-2.0.
+ # 
+ # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
+ # 
+ # Contributors:
+ #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
+ #=============================================================================#
+-->
+
+<product uid="rcpdemo" id="org.eclipse.statet.rj.example.rcpdemo2.product"
+      version="3.0.0.qualifier"
+      application="org.eclipse.statet.rj.example.rcpdemo2.application"
+      name="RServi RCP Demo"
+      useFeatures="true"
+      includeLaunchers="true">
+
+   <configIni use="default">
+   </configIni>
+
+   <launcherArgs>
+      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
+      </vmArgsMac>
+   </launcherArgs>
+
+   <windowImages i16="icons/eclipse16.png" i32="icons/eclipse32.png" i48="icons/eclipse48.png" i64="icons/eclipse64.png" i128=" icons/eclipse128.png" i256="icons/eclipse256.png"/>
+
+   <splash
+      startupProgressRect="20,190,415,15"
+      startupMessageRect="20,210,415,20"
+      startupForegroundColor="000000" />
+
+   <features>
+      <feature id="org.eclipse.rcp"/>
+      <feature id="org.eclipse.e4.rcp"/>
+      <feature id="org.eclipse.emf.ecore"/>
+      <feature id="org.eclipse.emf.common"/>
+      <feature id="org.eclipse.statet.rj.example.rcpdemo2"/>
+      <feature id="org.eclipse.statet.rj.eclient"/>
+      <feature id="org.eclipse.statet.rj.core"/>
+   </features>
+
+   <configurations>
+      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
+      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
+   </configurations>
+
+   <preferencesInfo>
+      <targetfile overwrite="false"/>
+   </preferencesInfo>
+
+   <cssInfo>
+   </cssInfo>
+
+</product>
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.classpath b/examples/org.eclipse.statet.rj.example.demo/.classpath
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.demo/.classpath
rename to examples/org.eclipse.statet.rj.example.demo/.classpath
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.gitignore b/examples/org.eclipse.statet.rj.example.demo/.gitignore
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.demo/.gitignore
rename to examples/org.eclipse.statet.rj.example.demo/.gitignore
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/.project b/examples/org.eclipse.statet.rj.example.demo/.project
similarity index 92%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/.project
rename to examples/org.eclipse.statet.rj.example.demo/.project
index c2fe9e6..beae410 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/.project
+++ b/examples/org.eclipse.statet.rj.example.demo/.project
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <projectDescription>
-	<name>org.eclipse.statet.rj.servi.rcpdemo</name>
+	<name>org.eclipse.statet.rj.example.demo</name>
 	<comment></comment>
 	<projects>
 	</projects>
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.core.resources.prefs b/examples/org.eclipse.statet.rj.example.demo/.settings/org.eclipse.core.resources.prefs
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.core.resources.prefs
rename to examples/org.eclipse.statet.rj.example.demo/.settings/org.eclipse.core.resources.prefs
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.core.runtime.prefs b/examples/org.eclipse.statet.rj.example.demo/.settings/org.eclipse.core.runtime.prefs
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.core.runtime.prefs
rename to examples/org.eclipse.statet.rj.example.demo/.settings/org.eclipse.core.runtime.prefs
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.jdt.core.prefs b/examples/org.eclipse.statet.rj.example.demo/.settings/org.eclipse.jdt.core.prefs
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.jdt.core.prefs
rename to examples/org.eclipse.statet.rj.example.demo/.settings/org.eclipse.jdt.core.prefs
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.jdt.ui.prefs b/examples/org.eclipse.statet.rj.example.demo/.settings/org.eclipse.jdt.ui.prefs
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.jdt.ui.prefs
rename to examples/org.eclipse.statet.rj.example.demo/.settings/org.eclipse.jdt.ui.prefs
diff --git a/examples/org.eclipse.statet.rj.example.demo/META-INF/MANIFEST.MF b/examples/org.eclipse.statet.rj.example.demo/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..62e5546
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.demo/META-INF/MANIFEST.MF
@@ -0,0 +1,12 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-SymbolicName: org.eclipse.statet.rj.example.demo
+Bundle-Version: 3.0.0.qualifier
+Bundle-Vendor: Eclipse.org
+Bundle-Name: StatET RJ - RServi Demo
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Require-Bundle: org.eclipse.statet.rj.data;bundle-version="[3.0.0,3.1.0)",
+ org.eclipse.statet.rj.servi;bundle-version="[3.0.0,3.1.0)",
+ org.eclipse.statet.ecommons.runtime.core;bundle-version="4.0.0",
+ org.eclipse.swt;bundle-version="3.4.0"
+Import-Package: org.eclipse.statet.jcommons.lang;version="4.0.0"
diff --git a/examples/org.eclipse.statet.rj.servi.demo/about.html b/examples/org.eclipse.statet.rj.example.demo/about.html
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.demo/about.html
rename to examples/org.eclipse.statet.rj.example.demo/about.html
diff --git a/examples/org.eclipse.statet.rj.servi.demo/build.properties b/examples/org.eclipse.statet.rj.example.demo/build.properties
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.demo/build.properties
rename to examples/org.eclipse.statet.rj.example.demo/build.properties
diff --git a/examples/org.eclipse.statet.rj.servi.demo/src/org/eclipse/statet/rj/servi/demo/DemoApp.java b/examples/org.eclipse.statet.rj.example.demo/src/org/eclipse/statet/rj/example/demo/DemoApp.java
similarity index 99%
rename from examples/org.eclipse.statet.rj.servi.demo/src/org/eclipse/statet/rj/servi/demo/DemoApp.java
rename to examples/org.eclipse.statet.rj.example.demo/src/org/eclipse/statet/rj/example/demo/DemoApp.java
index 5779151..85ebb39 100644
--- a/examples/org.eclipse.statet.rj.servi.demo/src/org/eclipse/statet/rj/servi/demo/DemoApp.java
+++ b/examples/org.eclipse.statet.rj.example.demo/src/org/eclipse/statet/rj/example/demo/DemoApp.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.rj.servi.demo;
+package org.eclipse.statet.rj.example.demo;
 
 import java.io.ByteArrayInputStream;
 import java.io.File;
diff --git a/examples/org.eclipse.statet.rj.servi.demo/src/org/eclipse/statet/rj/servi/demo/EAppEnvSWT.java b/examples/org.eclipse.statet.rj.example.demo/src/org/eclipse/statet/rj/example/demo/EAppEnvSWT.java
similarity index 97%
rename from examples/org.eclipse.statet.rj.servi.demo/src/org/eclipse/statet/rj/servi/demo/EAppEnvSWT.java
rename to examples/org.eclipse.statet.rj.example.demo/src/org/eclipse/statet/rj/example/demo/EAppEnvSWT.java
index dbe0666..8af95a2 100644
--- a/examples/org.eclipse.statet.rj.servi.demo/src/org/eclipse/statet/rj/servi/demo/EAppEnvSWT.java
+++ b/examples/org.eclipse.statet.rj.example.demo/src/org/eclipse/statet/rj/example/demo/EAppEnvSWT.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.rj.servi.demo;
+package org.eclipse.statet.rj.example.demo;
 
 import java.util.concurrent.CopyOnWriteArraySet;
 
diff --git a/examples/org.eclipse.statet.rj.servi.demo/src/org/eclipse/statet/rj/servi/examples/CorrelationPlotter.java b/examples/org.eclipse.statet.rj.example.demo/src/org/eclipse/statet/rj/example/demo/more/CorrelationPlotter.java
similarity index 98%
rename from examples/org.eclipse.statet.rj.servi.demo/src/org/eclipse/statet/rj/servi/examples/CorrelationPlotter.java
rename to examples/org.eclipse.statet.rj.example.demo/src/org/eclipse/statet/rj/example/demo/more/CorrelationPlotter.java
index ad848e6..926c9c2 100644
--- a/examples/org.eclipse.statet.rj.servi.demo/src/org/eclipse/statet/rj/servi/examples/CorrelationPlotter.java
+++ b/examples/org.eclipse.statet.rj.example.demo/src/org/eclipse/statet/rj/example/demo/more/CorrelationPlotter.java
@@ -12,7 +12,7 @@
  #     Tobias Verbeke - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.rj.servi.examples;
+package org.eclipse.statet.rj.example.demo.more;
 
 import java.io.ByteArrayInputStream;
 
@@ -33,9 +33,9 @@
 import org.eclipse.swt.widgets.Text;
 
 import org.eclipse.statet.rj.data.RObject;
+import org.eclipse.statet.rj.example.demo.EAppEnvSWT;
 import org.eclipse.statet.rj.servi.RServi;
 import org.eclipse.statet.rj.servi.RServiUtil;
-import org.eclipse.statet.rj.servi.demo.EAppEnvSWT;
 import org.eclipse.statet.rj.services.FunctionCall;
 import org.eclipse.statet.rj.services.util.Graphic;
 import org.eclipse.statet.rj.services.util.PngGraphic;
@@ -44,6 +44,11 @@
 public class CorrelationPlotter {
 	
 	
+	public static void main(String[] args) {
+		new CorrelationPlotter();
+	}
+	
+	
 	Display display= new Display();
 	Shell shell= new Shell(display);
 	
@@ -282,9 +287,4 @@
 		}
 	}
 	
-	
-	public static void main(String[] args) {
-		new CorrelationPlotter();
-	}
-	
 }
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.classpath b/examples/org.eclipse.statet.rj.example.rcpdemo1/.classpath
similarity index 100%
copy from examples/org.eclipse.statet.rj.servi.demo/.classpath
copy to examples/org.eclipse.statet.rj.example.rcpdemo1/.classpath
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.gitignore b/examples/org.eclipse.statet.rj.example.rcpdemo1/.gitignore
similarity index 100%
copy from examples/org.eclipse.statet.rj.servi.demo/.gitignore
copy to examples/org.eclipse.statet.rj.example.rcpdemo1/.gitignore
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/.project b/examples/org.eclipse.statet.rj.example.rcpdemo1/.project
similarity index 91%
copy from examples/org.eclipse.statet.rj.servi.rcpdemo/.project
copy to examples/org.eclipse.statet.rj.example.rcpdemo1/.project
index c2fe9e6..0650fe7 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/.project
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/.project
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <projectDescription>
-	<name>org.eclipse.statet.rj.servi.rcpdemo</name>
+	<name>org.eclipse.statet.rj.example.rcpdemo1</name>
 	<comment></comment>
 	<projects>
 	</projects>
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.core.resources.prefs b/examples/org.eclipse.statet.rj.example.rcpdemo1/.settings/org.eclipse.core.resources.prefs
similarity index 100%
copy from examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.core.resources.prefs
copy to examples/org.eclipse.statet.rj.example.rcpdemo1/.settings/org.eclipse.core.resources.prefs
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.core.runtime.prefs b/examples/org.eclipse.statet.rj.example.rcpdemo1/.settings/org.eclipse.core.runtime.prefs
similarity index 100%
copy from examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.core.runtime.prefs
copy to examples/org.eclipse.statet.rj.example.rcpdemo1/.settings/org.eclipse.core.runtime.prefs
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.jdt.core.prefs b/examples/org.eclipse.statet.rj.example.rcpdemo1/.settings/org.eclipse.jdt.core.prefs
similarity index 100%
copy from examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.jdt.core.prefs
copy to examples/org.eclipse.statet.rj.example.rcpdemo1/.settings/org.eclipse.jdt.core.prefs
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.jdt.ui.prefs b/examples/org.eclipse.statet.rj.example.rcpdemo1/.settings/org.eclipse.jdt.ui.prefs
similarity index 100%
copy from examples/org.eclipse.statet.rj.servi.demo/.settings/org.eclipse.jdt.ui.prefs
copy to examples/org.eclipse.statet.rj.example.rcpdemo1/.settings/org.eclipse.jdt.ui.prefs
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/META-INF/MANIFEST.MF b/examples/org.eclipse.statet.rj.example.rcpdemo1/META-INF/MANIFEST.MF
similarity index 76%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/META-INF/MANIFEST.MF
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/META-INF/MANIFEST.MF
index 4a096a3..4bea71f 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/META-INF/MANIFEST.MF
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/META-INF/MANIFEST.MF
@@ -1,11 +1,11 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
-Bundle-SymbolicName: org.eclipse.statet.rj.servi.rcpdemo;singleton:=true
+Bundle-SymbolicName: org.eclipse.statet.rj.example.rcpdemo1;singleton:=true
 Bundle-Version: 3.0.0.qualifier
 Bundle-Vendor: Eclipse.org
-Bundle-Name: StatET RJ - RServi RCP Demo (1)
+Bundle-Name: StatET RJ - RServi RCP Demo 1
+Bundle-Activator: org.eclipse.statet.internal.rj.example.rcpdemo.Activator
 Bundle-ActivationPolicy: lazy
-Bundle-Activator: org.eclipse.statet.internal.rj.servi.rcpdemo.Activator
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Require-Bundle: org.eclipse.core.runtime,
  org.eclipse.statet.ecommons.rmi.core;bundle-version="4.0.0",
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/RServi RCP Demo.launch b/examples/org.eclipse.statet.rj.example.rcpdemo1/RServi RCP Demo 1.launch
similarity index 79%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/RServi RCP Demo.launch
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/RServi RCP Demo 1.launch
index da45f0a..2d47215 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/RServi RCP Demo.launch
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/RServi RCP Demo 1.launch
@@ -2,34 +2,34 @@
 <launchConfiguration type="org.eclipse.pde.ui.RuntimeWorkbench">
 <setAttribute key="additional_plugins"/>
 <booleanAttribute key="append.args" value="true"/>
-<stringAttribute key="application" value="org.eclipse.statet.rj.servi.rcpdemo.application"/>
+<stringAttribute key="application" value="org.eclipse.statet.rj.example.rcpdemo1.application"/>
 <booleanAttribute key="askclear" value="false"/>
 <booleanAttribute key="automaticAdd" value="false"/>
-<booleanAttribute key="automaticValidate" value="false"/>
+<booleanAttribute key="automaticValidate" value="true"/>
 <stringAttribute key="bootstrap" value=""/>
 <stringAttribute key="checked" value="[NONE]"/>
 <booleanAttribute key="clearConfig" value="true"/>
 <booleanAttribute key="clearws" value="true"/>
-<booleanAttribute key="clearwslog" value="true"/>
-<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/RServi RCP Demo"/>
+<booleanAttribute key="clearwslog" value="false"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/RServi RCP Demo 1"/>
 <booleanAttribute key="default" value="false"/>
 <stringAttribute key="featureDefaultLocation" value="workspace"/>
 <stringAttribute key="featurePluginResolution" value="workspace"/>
 <booleanAttribute key="includeOptional" value="false"/>
-<stringAttribute key="location" value="${workspace_loc}/../runtime-org.eclipse.statet.rj.servi.rcpdemo.product"/>
+<stringAttribute key="location" value="${workspace_loc}/../runtime-org.eclipse.statet.rj.example.rcpdemo1.product"/>
 <stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
 <stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
 <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xms40m -Xmx512m"/>
 <booleanAttribute key="pde.generated.config" value="false"/>
 <stringAttribute key="pde.version" value="3.3"/>
-<stringAttribute key="product" value="org.eclipse.statet.rj.servi.rcpdemo.product"/>
-<stringAttribute key="productFile" value="\org.eclipse.statet.rj.servi.rcpdemo\org.eclipse.statet.rj.servi.rcpdemo.product"/>
+<stringAttribute key="product" value="org.eclipse.statet.rj.example.rcpdemo1.product"/>
 <setAttribute key="selected_features">
 <setEntry value="org.eclipse.e4.rcp:default"/>
 <setEntry value="org.eclipse.emf.common:default"/>
 <setEntry value="org.eclipse.emf.ecore:default"/>
 <setEntry value="org.eclipse.rcp:default"/>
+<setEntry value="org.eclipse.statet.rj.core:default"/>
+<setEntry value="org.eclipse.statet.rj.eclient:default"/>
 </setAttribute>
 <booleanAttribute key="show_selected_only" value="false"/>
 <booleanAttribute key="tracing" value="false"/>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/about.html b/examples/org.eclipse.statet.rj.example.rcpdemo1/about.html
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/about.html
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/about.html
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/build.properties b/examples/org.eclipse.statet.rj.example.rcpdemo1/build.properties
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/build.properties
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/build.properties
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse128.png b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse128.png
new file mode 100644
index 0000000..11b6f46
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse128.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse16.png b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse16.png
new file mode 100644
index 0000000..7fc6951
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse16.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse256.png b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse256.png
new file mode 100644
index 0000000..7e5bbdc
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse256.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse32.png b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse32.png
new file mode 100644
index 0000000..bf85680
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse32.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse48.png b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse48.png
new file mode 100644
index 0000000..f9706a7
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse48.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse512.png b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse512.png
new file mode 100644
index 0000000..825137f
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse512.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse64.png b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse64.png
new file mode 100644
index 0000000..5a5df2d
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/icons/eclipse64.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo1/plugin.xml b/examples/org.eclipse.statet.rj.example.rcpdemo1/plugin.xml
new file mode 100644
index 0000000..a172061
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/plugin.xml
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+
+   <extension
+         point="org.eclipse.core.runtime.applications"
+         id="application">
+      <application>
+         <run
+               class="org.eclipse.statet.internal.rj.example.rcpdemo.Application">
+         </run>
+      </application>
+   </extension>
+   <extension
+         point="org.eclipse.core.runtime.products"
+         id="product">
+      <product
+            application="org.eclipse.statet.rj.example.rcpdemo1.application"
+            name="RServi RCP Demo">
+         <property
+               name="appName"
+               value="RServi RCP Demo"/>
+         <property
+               name="windowImages"
+               value="icons/eclipse16.png,icons/eclipse32.png,icons/eclipse48.png,icons/eclipse64.png, icons/eclipse128.png,icons/eclipse256.png,icons/eclipse512.png"/>
+         <property
+               name="startupProgressRect"
+               value="20,190,415,15"/>
+         <property
+               name="startupMessageRect"
+               value="20,210,415,20"/>
+         <property
+               name="startupForegroundColor"
+               value="000000"/>
+         <property
+               name="preferenceCustomization"
+               value="plugin_customization.ini"/>
+      </product>
+   </extension>
+   
+   <extension
+         point="org.eclipse.ui.perspectives">
+      <perspective
+            id="org.eclipse.statet.rj.example.rcpdemo.perspective"
+            name="Perspective"
+            class="org.eclipse.statet.internal.rj.example.rcpdemo.Perspective">
+      </perspective>
+   </extension>
+   
+   <extension
+         point="org.eclipse.ui.menus">
+      <menuContribution
+            locationURI="menu:org.eclipse.ui.main.menu">
+         <menu id="file"
+               label="&amp;File">
+            <command
+                  commandId="org.eclipse.ui.file.exit"
+                  label="E&amp;xit">
+            </command>
+         </menu>
+      </menuContribution>
+   </extension>
+   
+   <extension
+         point="org.eclipse.ui.views">
+      <view
+            id="org.eclipse.statet.rj.example.rcpdemo.views.RServiConfig"
+            name="Config"
+            allowMultiple="false"
+            class="org.eclipse.statet.internal.rj.example.rcpdemo.views.RServiConfigView"
+            restorable="true">
+      </view>
+      <view
+            id="org.eclipse.statet.rj.example.rcpdemo.views.GraphDemo"
+            name="Graph"
+            allowMultiple="true"
+            class="org.eclipse.statet.internal.rj.example.rcpdemo.views.GraphDemoView"
+            restorable="true">
+      </view>
+      <view
+            id="org.eclipse.ui.views.ProgressView"
+            name="Progress"
+            class="org.eclipse.ui.ExtensionFactory:progressView">
+      </view>
+   </extension>
+   <extension
+         point="org.eclipse.ui.perspectiveExtensions">
+      <perspectiveExtension
+            targetID="*">
+         <view
+               id="org.eclipse.statet.rj.example.rcpdemo.views.GraphDemo"
+               closeable="false"
+               minimized="false"
+               relationship="left"
+               relative="org.eclipse.ui.editorss">
+         </view>
+         <view
+               id="org.eclipse.statet.rj.example.rcpdemo.views.RServiConfig"
+               closeable="false"
+               minimized="false"
+               relationship="left"
+               relative="org.eclipse.statet.rj.example.rcpdemo.views.GraphDemo"
+               ratio="0.3">
+         </view>
+         <view
+               id="org.eclipse.ui.views.ProgressView"
+               closeable="true"
+               minimized="false"
+               relationship="bottom"
+               relative="org.eclipse.statet.rj.example.rcpdemo.views.RServiConfig"
+               ratio="0.75"
+               visible="false">
+         </view>
+      </perspectiveExtension>
+   </extension>
+   
+</plugin>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/plugin_customization.ini b/examples/org.eclipse.statet.rj.example.rcpdemo1/plugin_customization.ini
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/plugin_customization.ini
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/plugin_customization.ini
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/splash.bmp b/examples/org.eclipse.statet.rj.example.rcpdemo1/splash.bmp
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/splash.bmp
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/splash.bmp
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Activator.java b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/Activator.java
similarity index 77%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Activator.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/Activator.java
index 339291b..ef1c1e2 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Activator.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/Activator.java
@@ -12,14 +12,15 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
 import org.osgi.framework.BundleContext;
 
+import org.eclipse.jface.resource.ImageDescriptor;
 import org.eclipse.ui.plugin.AbstractUIPlugin;
 
 import org.eclipse.statet.rj.eclient.graphics.comclient.ERGraphicFactory;
-import org.eclipse.statet.rj.servi.rcpdemo.RServiManager;
+import org.eclipse.statet.rj.example.rcpdemo.RServiManager;
 
 
 /**
@@ -28,7 +29,7 @@
 public class Activator extends AbstractUIPlugin {
 	
 	
-	public static final String BUNDLE_ID= "org.eclipse.statet.rj.servi.rcpdemo";
+	public static final String BUNDLE_ID= "org.eclipse.statet.rj.example.rcpdemo1"; //$NON-NLS-1$
 	
 	
 	private static Activator instance;
@@ -42,6 +43,17 @@
 		return instance;
 	}
 	
+	/**
+	 * Returns an image descriptor for the image file at the given
+	 * plug-in relative path
+	 *
+	 * @param path the path
+	 * @return the image descriptor
+	 */
+	public static ImageDescriptor getImageDescriptor(final String path) {
+		return imageDescriptorFromPlugin(BUNDLE_ID, path);
+	}
+	
 	
 	private RServiManager rserviManager;
 	
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Application.java b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/Application.java
similarity index 88%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Application.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/Application.java
index 8be7702..3c57b2e 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Application.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/Application.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
 import org.eclipse.equinox.app.IApplication;
 import org.eclipse.equinox.app.IApplicationContext;
@@ -32,15 +32,14 @@
 	
 	
 	@Override
-	public Object start(final IApplicationContext context) throws Exception {
+	public Object start(final IApplicationContext context) {
 		final Display display= PlatformUI.createDisplay();
 		try {
 			final int returnCode= PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
 			if (returnCode == PlatformUI.RETURN_RESTART) {
 				return IApplication.EXIT_RESTART;
-			} else {
-				return IApplication.EXIT_OK;
 			}
+			return IApplication.EXIT_OK;
 		}
 		finally {
 			display.dispose();
@@ -49,10 +48,10 @@
 	
 	@Override
 	public void stop() {
-		final IWorkbench workbench= PlatformUI.getWorkbench();
-		if (workbench == null) {
+		if (!PlatformUI.isWorkbenchRunning()) {
 			return;
 		}
+		final IWorkbench workbench= PlatformUI.getWorkbench();
 		final Display display= workbench.getDisplay();
 		display.syncExec(new Runnable() {
 			@Override
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationActionBarAdvisor.java b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationActionBarAdvisor.java
similarity index 79%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationActionBarAdvisor.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationActionBarAdvisor.java
index cbc5939..3d43185 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationActionBarAdvisor.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationActionBarAdvisor.java
@@ -12,13 +12,17 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
-import org.eclipse.ui.IWorkbenchWindow;
 import org.eclipse.ui.application.ActionBarAdvisor;
 import org.eclipse.ui.application.IActionBarConfigurer;
 
 
+/**
+ * An action bar advisor is responsible for creating, adding, and disposing of
+ * the actions added to a workbench window. Each window will be populated with
+ * new actions.
+ */
 public class ApplicationActionBarAdvisor extends ActionBarAdvisor {
 	
 	
@@ -27,8 +31,4 @@
 	}
 	
 	
-	@Override
-	protected void makeActions(final IWorkbenchWindow window) {
-	}
-	
 }
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchAdvisor.java b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchAdvisor.java
similarity index 84%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchAdvisor.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchAdvisor.java
index f17accb..dd44d11 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchAdvisor.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchAdvisor.java
@@ -12,19 +12,22 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
 import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
 import org.eclipse.ui.application.WorkbenchAdvisor;
 import org.eclipse.ui.application.WorkbenchWindowAdvisor;
 
+
 public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor {
 	
-	private static final String PERSPECTIVE_ID= "org.eclipse.statet.rj.servi.rcpdemo.perspective";
+	
+	private static final String PERSPECTIVE_ID= "org.eclipse.statet.rj.example.rcpdemo.perspective";
 	
 	
 	@Override
-	public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(final IWorkbenchWindowConfigurer configurer) {
+	public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(
+			final IWorkbenchWindowConfigurer configurer) {
 		return new ApplicationWorkbenchWindowAdvisor(configurer);
 	}
 	
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchWindowAdvisor.java b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
similarity index 96%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
index c078895..1ec34f1 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
 import org.eclipse.swt.graphics.Point;
 import org.eclipse.ui.application.ActionBarAdvisor;
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Perspective.java b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/Perspective.java
similarity index 94%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Perspective.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/Perspective.java
index 5e1ecd3..69923c2 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Perspective.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/Perspective.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
 import org.eclipse.ui.IPageLayout;
 import org.eclipse.ui.IPerspectiveFactory;
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/GraphDemoView.java b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/GraphDemoView.java
similarity index 89%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/GraphDemoView.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/GraphDemoView.java
index 5bfe9df..6487b00 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/GraphDemoView.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/GraphDemoView.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo.views;
+package org.eclipse.statet.internal.rj.example.rcpdemo.views;
 
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IProgressMonitor;
@@ -31,16 +31,21 @@
 
 import org.eclipse.statet.rj.eclient.graphics.ERGraphic;
 import org.eclipse.statet.rj.eclient.graphics.RGraphicComposite;
+import org.eclipse.statet.rj.example.rcpdemo.RJob;
 import org.eclipse.statet.rj.graphic.core.RGraphic;
-import org.eclipse.statet.rj.servi.rcpdemo.RJob;
 import org.eclipse.statet.rj.services.RGraphicCreator;
 import org.eclipse.statet.rj.services.RService;
 
 
+/** 
+ * View for R plots using RJ graphic device (rj.gd) and SWT rendering.
+ * 
+ * Note: All field access occur in display thread.
+ */
 public class GraphDemoView extends ViewPart {
 	
 	
-	public static final String VIEW_ID= "org.eclipse.statet.rj.servi.rcpdemo.views.GraphDemo";
+	public static final String VIEW_ID= "org.eclipse.statet.rj.example.rcpdemo.views.GraphDemo";
 	
 	
 	private Text commandControl;
@@ -111,7 +116,8 @@
 		final String command= this.commandControl.getText();
 		final RJob job= new RJob("GraphDemo") {
 			@Override
-			protected void runRTask(final RService r, final IProgressMonitor monitor) throws CoreException {
+			protected void runRTask(final RService r,
+					final IProgressMonitor monitor) throws CoreException {
 				monitor.beginTask("Creating graphic in R...", 100);
 				
 				final RGraphicCreator rGraphicCreator= r.createRGraphicCreator(0);
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/RServiConfigView.java b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/RServiConfigView.java
similarity index 94%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/RServiConfigView.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/RServiConfigView.java
index fa7e373..dab2c69 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/RServiConfigView.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/RServiConfigView.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo.views;
+package org.eclipse.statet.internal.rj.example.rcpdemo.views;
 
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IStatus;
@@ -30,14 +30,14 @@
 import org.eclipse.ui.part.ViewPart;
 import org.eclipse.ui.statushandlers.StatusManager;
 
-import org.eclipse.statet.internal.rj.servi.rcpdemo.Activator;
-import org.eclipse.statet.rj.servi.rcpdemo.RServiManager;
+import org.eclipse.statet.internal.rj.example.rcpdemo.Activator;
+import org.eclipse.statet.rj.example.rcpdemo.RServiManager;
 
 
 public class RServiConfigView extends ViewPart {
 	
 	
-	public static final String VIEW_ID= "org.eclipse.statet.rj.servi.rcpdemo.views.RServiConfig";
+	public static final String VIEW_ID= "org.eclipse.statet.rj.example.rcpdemo.views.RServiConfig";
 	
 	
 	private Button remoteSelectControl;
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/rj/servi/rcpdemo/RJob.java b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/rj/example/rcpdemo/RJob.java
similarity index 94%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/rj/servi/rcpdemo/RJob.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/rj/example/rcpdemo/RJob.java
index 9c1255d..88b8522 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/rj/servi/rcpdemo/RJob.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/rj/example/rcpdemo/RJob.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.rj.servi.rcpdemo;
+package org.eclipse.statet.rj.example.rcpdemo;
 
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IProgressMonitor;
@@ -20,7 +20,7 @@
 import org.eclipse.core.runtime.Status;
 import org.eclipse.core.runtime.jobs.Job;
 
-import org.eclipse.statet.internal.rj.servi.rcpdemo.Activator;
+import org.eclipse.statet.internal.rj.example.rcpdemo.Activator;
 import org.eclipse.statet.rj.servi.RServi;
 import org.eclipse.statet.rj.services.RService;
 
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/rj/servi/rcpdemo/RServiManager.java b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/rj/example/rcpdemo/RServiManager.java
similarity index 95%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/rj/servi/rcpdemo/RServiManager.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/rj/example/rcpdemo/RServiManager.java
index 92a8619..d791a98 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/rj/servi/rcpdemo/RServiManager.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo1/src/org/eclipse/statet/rj/example/rcpdemo/RServiManager.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.rj.servi.rcpdemo;
+package org.eclipse.statet.rj.example.rcpdemo;
 
 import java.io.File;
 import java.util.List;
@@ -30,9 +30,8 @@
 import org.eclipse.statet.ecommons.rmi.core.RMIRegistry;
 import org.eclipse.statet.ecommons.rmi.core.RMIRegistryManager;
 
-import org.eclipse.statet.internal.rj.servi.rcpdemo.Activator;
+import org.eclipse.statet.internal.rj.example.rcpdemo.Activator;
 import org.eclipse.statet.rj.RjException;
-import org.eclipse.statet.rj.eclient.graphics.comclient.ERClientGraphicActionsFactory;
 import org.eclipse.statet.rj.rsetups.RSetup;
 import org.eclipse.statet.rj.rsetups.RSetupUtil;
 import org.eclipse.statet.rj.server.RjsComConfig;
@@ -84,8 +83,8 @@
 		this.name= appId;
 		
 		RjsComConfig.setProperty("rj.servi.graphicFactory", graphicFactory);
-		RjsComConfig.setProperty("rj.servi.comClientGraphicActionsFactory",
-				new ERClientGraphicActionsFactory() );
+//		RjsComConfig.setProperty("rj.servi.comClientGraphicActionsFactory",
+//				new MyClientGraphicActionsFactory() );
 	}
 	
 	
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/.classpath b/examples/org.eclipse.statet.rj.example.rcpdemo2/.classpath
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/.classpath
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/.classpath
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/.gitignore b/examples/org.eclipse.statet.rj.example.rcpdemo2/.gitignore
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/.gitignore
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/.gitignore
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/.project b/examples/org.eclipse.statet.rj.example.rcpdemo2/.project
similarity index 91%
copy from examples/org.eclipse.statet.rj.servi.rcpdemo/.project
copy to examples/org.eclipse.statet.rj.example.rcpdemo2/.project
index c2fe9e6..3cfc6f7 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/.project
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/.project
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <projectDescription>
-	<name>org.eclipse.statet.rj.servi.rcpdemo</name>
+	<name>org.eclipse.statet.rj.example.rcpdemo2</name>
 	<comment></comment>
 	<projects>
 	</projects>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/.settings/org.eclipse.core.resources.prefs b/examples/org.eclipse.statet.rj.example.rcpdemo2/.settings/org.eclipse.core.resources.prefs
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/.settings/org.eclipse.core.resources.prefs
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/.settings/org.eclipse.core.resources.prefs
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/.settings/org.eclipse.core.runtime.prefs b/examples/org.eclipse.statet.rj.example.rcpdemo2/.settings/org.eclipse.core.runtime.prefs
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/.settings/org.eclipse.core.runtime.prefs
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/.settings/org.eclipse.core.runtime.prefs
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/.settings/org.eclipse.jdt.core.prefs b/examples/org.eclipse.statet.rj.example.rcpdemo2/.settings/org.eclipse.jdt.core.prefs
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/.settings/org.eclipse.jdt.core.prefs
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/.settings/org.eclipse.jdt.core.prefs
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/.settings/org.eclipse.jdt.ui.prefs b/examples/org.eclipse.statet.rj.example.rcpdemo2/.settings/org.eclipse.jdt.ui.prefs
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/.settings/org.eclipse.jdt.ui.prefs
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/.settings/org.eclipse.jdt.ui.prefs
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/META-INF/MANIFEST.MF b/examples/org.eclipse.statet.rj.example.rcpdemo2/META-INF/MANIFEST.MF
similarity index 80%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/META-INF/MANIFEST.MF
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/META-INF/MANIFEST.MF
index 029bb28..3fc2cc3 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/META-INF/MANIFEST.MF
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/META-INF/MANIFEST.MF
@@ -1,11 +1,11 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
-Bundle-SymbolicName: org.eclipse.statet.rj.servi.rcpdemo2;singleton:=true
+Bundle-SymbolicName: org.eclipse.statet.rj.example.rcpdemo2;singleton:=true
 Bundle-Version: 3.0.0.qualifier
 Bundle-Vendor: Eclipse.org
-Bundle-Name: StatET RJ - RServi RCP Demo (2)
+Bundle-Name: StatET RJ - RServi RCP Demo 2
+Bundle-Activator: org.eclipse.statet.internal.rj.example.rcpdemo.Activator
 Bundle-ActivationPolicy: lazy
-Bundle-Activator: org.eclipse.statet.internal.rj.servi.rcpdemo.Activator
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Require-Bundle: org.eclipse.statet.ecommons.runtime.core;bundle-version="4.0.0";visibility:=reexport,
  org.eclipse.core.runtime,
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/RServi RCP Demo.launch b/examples/org.eclipse.statet.rj.example.rcpdemo2/RServi RCP Demo 2.launch
similarity index 79%
copy from examples/org.eclipse.statet.rj.servi.rcpdemo/RServi RCP Demo.launch
copy to examples/org.eclipse.statet.rj.example.rcpdemo2/RServi RCP Demo 2.launch
index da45f0a..ee32cdc 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/RServi RCP Demo.launch
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/RServi RCP Demo 2.launch
@@ -2,34 +2,34 @@
 <launchConfiguration type="org.eclipse.pde.ui.RuntimeWorkbench">
 <setAttribute key="additional_plugins"/>
 <booleanAttribute key="append.args" value="true"/>
-<stringAttribute key="application" value="org.eclipse.statet.rj.servi.rcpdemo.application"/>
+<stringAttribute key="application" value="org.eclipse.statet.rj.example.rcpdemo2.application"/>
 <booleanAttribute key="askclear" value="false"/>
 <booleanAttribute key="automaticAdd" value="false"/>
-<booleanAttribute key="automaticValidate" value="false"/>
+<booleanAttribute key="automaticValidate" value="true"/>
 <stringAttribute key="bootstrap" value=""/>
 <stringAttribute key="checked" value="[NONE]"/>
 <booleanAttribute key="clearConfig" value="true"/>
 <booleanAttribute key="clearws" value="true"/>
-<booleanAttribute key="clearwslog" value="true"/>
-<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/RServi RCP Demo"/>
+<booleanAttribute key="clearwslog" value="false"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/RServi RCP Demo 2"/>
 <booleanAttribute key="default" value="false"/>
 <stringAttribute key="featureDefaultLocation" value="workspace"/>
 <stringAttribute key="featurePluginResolution" value="workspace"/>
 <booleanAttribute key="includeOptional" value="false"/>
-<stringAttribute key="location" value="${workspace_loc}/../runtime-org.eclipse.statet.rj.servi.rcpdemo.product"/>
+<stringAttribute key="location" value="${workspace_loc}/../runtime-org.eclipse.statet.rj.example.rcpdemo2.product"/>
 <stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
 <stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
 <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xms40m -Xmx512m"/>
 <booleanAttribute key="pde.generated.config" value="false"/>
 <stringAttribute key="pde.version" value="3.3"/>
-<stringAttribute key="product" value="org.eclipse.statet.rj.servi.rcpdemo.product"/>
-<stringAttribute key="productFile" value="\org.eclipse.statet.rj.servi.rcpdemo\org.eclipse.statet.rj.servi.rcpdemo.product"/>
+<stringAttribute key="product" value="org.eclipse.statet.rj.example.rcpdemo2.product"/>
 <setAttribute key="selected_features">
 <setEntry value="org.eclipse.e4.rcp:default"/>
 <setEntry value="org.eclipse.emf.common:default"/>
 <setEntry value="org.eclipse.emf.ecore:default"/>
 <setEntry value="org.eclipse.rcp:default"/>
+<setEntry value="org.eclipse.statet.rj.core:default"/>
+<setEntry value="org.eclipse.statet.rj.eclient:default"/>
 </setAttribute>
 <booleanAttribute key="show_selected_only" value="false"/>
 <booleanAttribute key="tracing" value="false"/>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/about.html b/examples/org.eclipse.statet.rj.example.rcpdemo2/about.html
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/about.html
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/about.html
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/build.properties b/examples/org.eclipse.statet.rj.example.rcpdemo2/build.properties
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/build.properties
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/build.properties
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse128.png b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse128.png
new file mode 100644
index 0000000..11b6f46
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse128.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse16.png b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse16.png
new file mode 100644
index 0000000..7fc6951
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse16.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse256.png b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse256.png
new file mode 100644
index 0000000..7e5bbdc
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse256.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse32.png b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse32.png
new file mode 100644
index 0000000..bf85680
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse32.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse48.png b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse48.png
new file mode 100644
index 0000000..f9706a7
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse48.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse512.png b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse512.png
new file mode 100644
index 0000000..825137f
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse512.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse64.png b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse64.png
new file mode 100644
index 0000000..5a5df2d
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/icons/eclipse64.png
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.example.rcpdemo2/plugin.xml b/examples/org.eclipse.statet.rj.example.rcpdemo2/plugin.xml
new file mode 100644
index 0000000..a32ab5c
--- /dev/null
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/plugin.xml
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+
+   <extension
+         point="org.eclipse.core.runtime.applications"
+         id="application">
+      <application>
+         <run
+               class="org.eclipse.statet.internal.rj.example.rcpdemo.Application">
+         </run>
+      </application>
+   </extension>
+   <extension
+         point="org.eclipse.core.runtime.products"
+         id="product">
+      <product
+            application="org.eclipse.statet.rj.example.rcpdemo2.application"
+            name="RServi RCP Demo">
+         <property
+               name="appName"
+               value="RServi RCP Demo"/>
+         <property
+               name="windowImages"
+               value="icons/eclipse16.png,icons/eclipse32.png,icons/eclipse48.png,icons/eclipse64.png, icons/eclipse128.png,icons/eclipse256.png,icons/eclipse512.png"/>
+         <property
+               name="startupProgressRect"
+               value="20,190,415,15"/>
+         <property
+               name="startupMessageRect"
+               value="20,210,415,20"/>
+         <property
+               name="startupForegroundColor"
+               value="000000"/>
+         <property
+               name="preferenceCustomization"
+               value="plugin_customization.ini"/>
+      </product>
+   </extension>
+   
+   <extension
+         point="org.eclipse.ui.perspectives">
+      <perspective
+            id="org.eclipse.statet.rj.example.rcpdemo.perspective"
+            name="Perspective"
+            class="org.eclipse.statet.internal.rj.example.rcpdemo.Perspective">
+      </perspective>
+   </extension>
+   
+   <extension
+         point="org.eclipse.ui.menus">
+      <menuContribution
+            locationURI="menu:org.eclipse.ui.main.menu">
+         <menu id="file"
+               label="&amp;File">
+            <command
+                  commandId="org.eclipse.ui.file.exit"
+                  label="E&amp;xit">
+            </command>
+         </menu>
+      </menuContribution>
+   </extension>
+   
+   <extension
+         point="org.eclipse.ui.views">
+      <view
+            id="org.eclipse.statet.rj.example.rcpdemo.views.RServiConfig"
+            name="Config"
+            allowMultiple="false"
+            class="org.eclipse.statet.internal.rj.example.rcpdemo.views.RServiConfigView"
+            restorable="true">
+      </view>
+      <view
+            id="org.eclipse.statet.rj.example.rcpdemo.views.GraphDemo"
+            name="Graph"
+            allowMultiple="true"
+            class="org.eclipse.statet.internal.rj.example.rcpdemo.views.GraphDemoView"
+            restorable="true">
+      </view>
+      <view
+            id="org.eclipse.ui.views.ProgressView"
+            name="Progress"
+            class="org.eclipse.ui.ExtensionFactory:progressView">
+      </view>
+   </extension>
+   <extension
+         point="org.eclipse.ui.perspectiveExtensions">
+      <perspectiveExtension
+            targetID="*">
+         <view
+               id="org.eclipse.statet.rj.example.rcpdemo.views.GraphDemo"
+               closeable="false"
+               minimized="false"
+               relationship="left"
+               relative="org.eclipse.ui.editorss">
+         </view>
+         <view
+               id="org.eclipse.statet.rj.example.rcpdemo.views.RServiConfig"
+               closeable="false"
+               minimized="false"
+               relationship="left"
+               relative="org.eclipse.statet.rj.example.rcpdemo.views.GraphDemo"
+               ratio="0.3">
+         </view>
+         <view
+               id="org.eclipse.ui.views.ProgressView"
+               closeable="true"
+               minimized="false"
+               relationship="bottom"
+               relative="org.eclipse.statet.rj.example.rcpdemo.views.RServiConfig"
+               ratio="0.75"
+               visible="false">
+         </view>
+      </perspectiveExtension>
+   </extension>
+   
+</plugin>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/plugin_customization.ini b/examples/org.eclipse.statet.rj.example.rcpdemo2/plugin_customization.ini
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/plugin_customization.ini
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/plugin_customization.ini
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/splash.bmp b/examples/org.eclipse.statet.rj.example.rcpdemo2/splash.bmp
similarity index 100%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/splash.bmp
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/splash.bmp
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Activator.java b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/Activator.java
similarity index 79%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Activator.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/Activator.java
index ab16ba2..267d57a 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Activator.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/Activator.java
@@ -12,16 +12,17 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
 import org.osgi.framework.BundleContext;
 
+import org.eclipse.jface.resource.ImageDescriptor;
 import org.eclipse.ui.plugin.AbstractUIPlugin;
 
 import org.eclipse.statet.jcommons.lang.Disposable;
 
 import org.eclipse.statet.rj.eclient.graphics.comclient.ERGraphicFactory;
-import org.eclipse.statet.rj.servi.rcpdemo.RServiManager;
+import org.eclipse.statet.rj.example.rcpdemo.RServiManager;
 
 
 /**
@@ -30,7 +31,7 @@
 public class Activator extends AbstractUIPlugin {
 	
 	
-	public static final String BUNDLE_ID= "org.eclipse.statet.rj.servi.rcpdemo2";
+	public static final String BUNDLE_ID= "org.eclipse.statet.rj.example.rcpdemo2"; //$NON-NLS-1$
 	
 	
 	private static Activator instance;
@@ -44,6 +45,17 @@
 		return instance;
 	}
 	
+	/**
+	 * Returns an image descriptor for the image file at the given
+	 * plug-in relative path
+	 *
+	 * @param path the path
+	 * @return the image descriptor
+	 */
+	public static ImageDescriptor getImageDescriptor(final String path) {
+		return imageDescriptorFromPlugin(BUNDLE_ID, path);
+	}
+	
 	
 	private RServiManager rserviManager;
 	
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Application.java b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/Application.java
similarity index 88%
copy from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Application.java
copy to examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/Application.java
index 8be7702..3c57b2e 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Application.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/Application.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
 import org.eclipse.equinox.app.IApplication;
 import org.eclipse.equinox.app.IApplicationContext;
@@ -32,15 +32,14 @@
 	
 	
 	@Override
-	public Object start(final IApplicationContext context) throws Exception {
+	public Object start(final IApplicationContext context) {
 		final Display display= PlatformUI.createDisplay();
 		try {
 			final int returnCode= PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
 			if (returnCode == PlatformUI.RETURN_RESTART) {
 				return IApplication.EXIT_RESTART;
-			} else {
-				return IApplication.EXIT_OK;
 			}
+			return IApplication.EXIT_OK;
 		}
 		finally {
 			display.dispose();
@@ -49,10 +48,10 @@
 	
 	@Override
 	public void stop() {
-		final IWorkbench workbench= PlatformUI.getWorkbench();
-		if (workbench == null) {
+		if (!PlatformUI.isWorkbenchRunning()) {
 			return;
 		}
+		final IWorkbench workbench= PlatformUI.getWorkbench();
 		final Display display= workbench.getDisplay();
 		display.syncExec(new Runnable() {
 			@Override
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationActionBarAdvisor.java b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationActionBarAdvisor.java
similarity index 79%
copy from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationActionBarAdvisor.java
copy to examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationActionBarAdvisor.java
index cbc5939..3d43185 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationActionBarAdvisor.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationActionBarAdvisor.java
@@ -12,13 +12,17 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
-import org.eclipse.ui.IWorkbenchWindow;
 import org.eclipse.ui.application.ActionBarAdvisor;
 import org.eclipse.ui.application.IActionBarConfigurer;
 
 
+/**
+ * An action bar advisor is responsible for creating, adding, and disposing of
+ * the actions added to a workbench window. Each window will be populated with
+ * new actions.
+ */
 public class ApplicationActionBarAdvisor extends ActionBarAdvisor {
 	
 	
@@ -27,8 +31,4 @@
 	}
 	
 	
-	@Override
-	protected void makeActions(final IWorkbenchWindow window) {
-	}
-	
 }
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchAdvisor.java b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchAdvisor.java
similarity index 84%
copy from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchAdvisor.java
copy to examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchAdvisor.java
index f17accb..dd44d11 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchAdvisor.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchAdvisor.java
@@ -12,19 +12,22 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
 import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
 import org.eclipse.ui.application.WorkbenchAdvisor;
 import org.eclipse.ui.application.WorkbenchWindowAdvisor;
 
+
 public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor {
 	
-	private static final String PERSPECTIVE_ID= "org.eclipse.statet.rj.servi.rcpdemo.perspective";
+	
+	private static final String PERSPECTIVE_ID= "org.eclipse.statet.rj.example.rcpdemo.perspective";
 	
 	
 	@Override
-	public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(final IWorkbenchWindowConfigurer configurer) {
+	public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(
+			final IWorkbenchWindowConfigurer configurer) {
 		return new ApplicationWorkbenchWindowAdvisor(configurer);
 	}
 	
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchWindowAdvisor.java b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
similarity index 96%
copy from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
copy to examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
index c078895..1ec34f1 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
 import org.eclipse.swt.graphics.Point;
 import org.eclipse.ui.application.ActionBarAdvisor;
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Perspective.java b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/Perspective.java
similarity index 94%
copy from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Perspective.java
copy to examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/Perspective.java
index 5e1ecd3..69923c2 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Perspective.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/Perspective.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
+package org.eclipse.statet.internal.rj.example.rcpdemo;
 
 import org.eclipse.ui.IPageLayout;
 import org.eclipse.ui.IPerspectiveFactory;
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/GraphDemoView.java b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/GraphDemoView.java
similarity index 96%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/GraphDemoView.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/GraphDemoView.java
index bb926a6..3fd574c 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/GraphDemoView.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/GraphDemoView.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo.views;
+package org.eclipse.statet.internal.rj.example.rcpdemo.views;
 
 import static org.eclipse.statet.rj.eclient.graphics.RGraphicCompositeActionSet.CONTEXT_MENU_GROUP_ID;
 import static org.eclipse.statet.rj.eclient.graphics.RGraphicCompositeActionSet.SIZE_MENU_GROUP_ID;
@@ -38,7 +38,7 @@
 
 import org.eclipse.statet.ecommons.ts.core.ToolRunnable;
 
-import org.eclipse.statet.internal.rj.servi.rcpdemo.Activator;
+import org.eclipse.statet.internal.rj.example.rcpdemo.Activator;
 import org.eclipse.statet.rj.eclient.core.AbstractRToolRunnable;
 import org.eclipse.statet.rj.eclient.core.RToolService;
 import org.eclipse.statet.rj.eclient.graphics.ERGraphic;
@@ -56,7 +56,7 @@
 public class GraphDemoView extends ViewPart {
 	
 	
-	public static final String VIEW_ID= "org.eclipse.statet.rj.servi.rcpdemo.views.GraphDemo";
+	public static final String VIEW_ID= "org.eclipse.statet.rj.example.rcpdemo.views.GraphDemo";
 	
 	
 	private Text commandControl;
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/RServiConfigView.java b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/RServiConfigView.java
similarity index 94%
copy from examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/RServiConfigView.java
copy to examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/RServiConfigView.java
index fa7e373..dab2c69 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/RServiConfigView.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/internal/rj/example/rcpdemo/views/RServiConfigView.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.internal.rj.servi.rcpdemo.views;
+package org.eclipse.statet.internal.rj.example.rcpdemo.views;
 
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IStatus;
@@ -30,14 +30,14 @@
 import org.eclipse.ui.part.ViewPart;
 import org.eclipse.ui.statushandlers.StatusManager;
 
-import org.eclipse.statet.internal.rj.servi.rcpdemo.Activator;
-import org.eclipse.statet.rj.servi.rcpdemo.RServiManager;
+import org.eclipse.statet.internal.rj.example.rcpdemo.Activator;
+import org.eclipse.statet.rj.example.rcpdemo.RServiManager;
 
 
 public class RServiConfigView extends ViewPart {
 	
 	
-	public static final String VIEW_ID= "org.eclipse.statet.rj.servi.rcpdemo.views.RServiConfig";
+	public static final String VIEW_ID= "org.eclipse.statet.rj.example.rcpdemo.views.RServiConfig";
 	
 	
 	private Button remoteSelectControl;
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/rj/servi/rcpdemo/RServiManager.java b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/rj/example/rcpdemo/RServiManager.java
similarity index 98%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/rj/servi/rcpdemo/RServiManager.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/rj/example/rcpdemo/RServiManager.java
index 8ef59e5..52ea4d8 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/rj/servi/rcpdemo/RServiManager.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/rj/example/rcpdemo/RServiManager.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.rj.servi.rcpdemo;
+package org.eclipse.statet.rj.example.rcpdemo;
 
 import java.io.File;
 import java.util.ArrayList;
@@ -35,7 +35,7 @@
 import org.eclipse.statet.ecommons.ts.core.Tool;
 import org.eclipse.statet.ecommons.ts.core.ToolRunnable;
 
-import org.eclipse.statet.internal.rj.servi.rcpdemo.Activator;
+import org.eclipse.statet.internal.rj.example.rcpdemo.Activator;
 import org.eclipse.statet.rj.RjException;
 import org.eclipse.statet.rj.eclient.graphics.comclient.ERClientGraphicActionsFactory;
 import org.eclipse.statet.rj.rsetups.RSetup;
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/rj/servi/rcpdemo/RServiSession.java b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/rj/example/rcpdemo/RServiSession.java
similarity index 98%
rename from examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/rj/servi/rcpdemo/RServiSession.java
rename to examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/rj/example/rcpdemo/RServiSession.java
index 57b384a..d6cfeb6 100644
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/rj/servi/rcpdemo/RServiSession.java
+++ b/examples/org.eclipse.statet.rj.example.rcpdemo2/src/org/eclipse/statet/rj/example/rcpdemo/RServiSession.java
@@ -12,7 +12,7 @@
  #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
  #=============================================================================*/
 
-package org.eclipse.statet.rj.servi.rcpdemo;
+package org.eclipse.statet.rj.example.rcpdemo;
 
 import java.io.InputStream;
 import java.io.OutputStream;
@@ -39,8 +39,8 @@
 import org.eclipse.statet.ecommons.ts.core.ToolRunnable;
 import org.eclipse.statet.ecommons.ts.core.ToolService;
 
+import org.eclipse.statet.internal.rj.example.rcpdemo.Activator;
 import org.eclipse.statet.internal.rj.servi.RServiImpl;
-import org.eclipse.statet.internal.rj.servi.rcpdemo.Activator;
 import org.eclipse.statet.rj.data.RObject;
 import org.eclipse.statet.rj.data.RReference;
 import org.eclipse.statet.rj.eclient.core.RToolService;
diff --git a/examples/org.eclipse.statet.rj.servi.demo/.project b/examples/org.eclipse.statet.rj.servi.demo/.project
deleted file mode 100644
index e001a87..0000000
--- a/examples/org.eclipse.statet.rj.servi.demo/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.statet.rj.servi.demo</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/org.eclipse.statet.rj.servi.demo/META-INF/MANIFEST.MF b/examples/org.eclipse.statet.rj.servi.demo/META-INF/MANIFEST.MF
deleted file mode 100644
index c7d05dd..0000000
--- a/examples/org.eclipse.statet.rj.servi.demo/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,15 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-SymbolicName: org.eclipse.statet.rj.servi.demo
-Bundle-Version: 3.0.0.qualifier
-Bundle-Vendor: Eclipse.org
-Bundle-Name: StatET RJ - RServi Demo
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Require-Bundle: org.eclipse.statet.rj.data;bundle-version="3.0.0",
- org.eclipse.statet.rj.servi;bundle-version="3.0.0",
- org.eclipse.swt;bundle-version="3.4.0",
- org.eclipse.statet.ecommons.runtime.core
-Import-Package: org.eclipse.core.runtime,
- org.eclipse.statet.jcommons.lang;version="4.0.0",
- org.eclipse.statet.rj.services,
- org.eclipse.statet.rj.services.util
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/.classpath b/examples/org.eclipse.statet.rj.servi.rcpdemo/.classpath
deleted file mode 100644
index 7728a88..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/.classpath
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
-		<attributes>
-			<attribute name="annotationpath" value="/org.eclipse.statet/eea/"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
-		<attributes>
-			<attribute name="annotationpath" value="/org.eclipse.statet/eea/"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/.gitignore b/examples/org.eclipse.statet.rj.servi.rcpdemo/.gitignore
deleted file mode 100644
index 5e56e04..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/bin
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.core.resources.prefs b/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.core.runtime.prefs b/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.jdt.core.prefs b/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index ccb1eaa..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,325 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.codeComplete.argumentPrefixes=
-org.eclipse.jdt.core.codeComplete.argumentSuffixes=
-org.eclipse.jdt.core.codeComplete.fieldPrefixes=
-org.eclipse.jdt.core.codeComplete.fieldSuffixes=
-org.eclipse.jdt.core.codeComplete.localPrefixes=
-org.eclipse.jdt.core.codeComplete.localSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes=
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.8
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.8
-org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=85
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
-org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=2
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=1
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=2
-org.eclipse.jdt.core.formatter.blank_lines_before_package=1
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=100
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=false
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=100
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_on_off_tags=false
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=false
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.jdt.ui.prefs b/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index e62a4f5..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,131 +0,0 @@
-cleanup.add_default_serial_version_id=true
-cleanup.add_generated_serial_version_id=false
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=false
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_missing_override_annotations_interface_methods=true
-cleanup.add_serial_version_id=false
-cleanup.always_use_blocks=true
-cleanup.always_use_parentheses_in_expressions=true
-cleanup.always_use_this_for_non_static_field_access=true
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_functional_interfaces=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=false
-cleanup.format_source_code=false
-cleanup.format_source_code_changes_only=false
-cleanup.insert_inferred_type_arguments=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=true
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=true
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=false
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=false
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_redundant_type_arguments=true
-cleanup.remove_trailing_whitespaces=false
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=true
-cleanup.remove_unused_private_members=false
-cleanup.remove_unused_private_methods=true
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=false
-cleanup.sort_members_all=false
-cleanup.use_anonymous_class_creation=false
-cleanup.use_blocks=true
-cleanup.use_blocks_only_for_return_and_throw=false
-cleanup.use_lambda=true
-cleanup.use_parentheses_in_expressions=false
-cleanup.use_this_for_non_static_field_access=true
-cleanup.use_this_for_non_static_field_access_only_if_necessary=false
-cleanup.use_this_for_non_static_method_access=true
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup.use_type_arguments=false
-cleanup_profile=_StatET
-cleanup_settings_version=2
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=_StatET
-formatter_settings_version=12
-org.eclipse.jdt.ui.exception.name=e
-org.eclipse.jdt.ui.gettersetter.use.is=true
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=\#;java;javax;com.ibm.icu;org.osgi;org.eclipse;;org.eclipse.statet.jcommons;org.eclipse.statet.ecommons;org.eclipse.statet;
-org.eclipse.jdt.ui.javadoc=true
-org.eclipse.jdt.ui.keywordthis=true
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.overrideannotation=true
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\#\n \# Copyright (c) ${year} ${user} and others.\n # \n # This program and the accompanying materials are made available under the\n # terms of the Eclipse Public License 2.0 which is available at\n # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0\n # which is available at https://www.apache.org/licenses/LICENSE-2.0.\n # \n # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0\n # \n \# Contributors\:\n \#     ${user} - initial API and implementation\n \#\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=\=*/</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * \n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment"/><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_missing_override_annotations_interface_methods=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=true
-sp_cleanup.always_use_this_for_non_static_field_access=true
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_functional_interfaces=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=false
-sp_cleanup.format_source_code_changes_only=false
-sp_cleanup.insert_inferred_type_arguments=false
-sp_cleanup.make_local_variable_final=true
-sp_cleanup.make_parameters_final=true
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=false
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=false
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=true
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_redundant_type_arguments=true
-sp_cleanup.remove_trailing_whitespaces=false
-sp_cleanup.remove_trailing_whitespaces_all=false
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=true
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=false
-sp_cleanup.remove_unused_imports=false
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=false
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=false
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_anonymous_class_creation=false
-sp_cleanup.use_blocks=true
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_lambda=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=true
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=false
-sp_cleanup.use_this_for_non_static_method_access=true
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-sp_cleanup.use_type_arguments=false
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_about.gif b/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_about.gif
deleted file mode 100644
index 20d9ad2..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_about.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_launcher.icns b/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_launcher.icns
deleted file mode 100644
index b77a6a6..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_launcher.icns
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_launcher.ico b/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_launcher.ico
deleted file mode 100644
index d548f71..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_launcher.ico
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_launcher.xpm b/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_launcher.xpm
deleted file mode 100644
index d2918c1..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_launcher.xpm
+++ /dev/null
@@ -1,307 +0,0 @@
-/* XPM */
-static char * icon48_xpm[]= {
-"48 48 256 2",
-"  	c #4B4B3B3B9090",
-". 	c #0D0D0E0E5454",
-"X 	c #11110E0E5B5B",
-"o 	c #17170F0F6363",
-"O 	c #1D1D13136969",
-"+ 	c #212114146C6C",
-"@ 	c #252514147171",
-"# 	c #282811116C6C",
-"$ 	c #26260D0D6363",
-"% 	c #22220B0B5E5E",
-"& 	c #1C1C0B0B5A5A",
-"* 	c #1C1C0B0B5252",
-"= 	c #1B1B05055353",
-"- 	c #161606064D4D",
-"; 	c #161605054949",
-": 	c #111104044848",
-"> 	c #131304044545",
-", 	c #131305054242",
-"< 	c #141410105E5E",
-"1 	c #2C2C15157373",
-"2 	c #2B2B1B1B7575",
-"3 	c #343416167272",
-"4 	c #313113136E6E",
-"5 	c #222209095757",
-"6 	c #1B1B06064D4D",
-"7 	c #15150B0B4242",
-"8 	c #13130C0C5555",
-"9 	c #2E2E1B1B7878",
-"0 	c #33331F1F7C7C",
-"q 	c #343418187878",
-"w 	c #3B3B1C1C7575",
-"e 	c #2E2E10106767",
-"r 	c #1B1B07074747",
-"t 	c #18180B0B4646",
-"y 	c #151513136262",
-"u 	c #1A1A15156464",
-"i 	c #34341F1F7777",
-"p 	c #40401E1E8080",
-"a 	c #42421B1B7A7A",
-"s 	c #3B3B15157474",
-"d 	c #2B2B0B0B5B5B",
-"f 	c #222207075252",
-"g 	c #373727277A7A",
-"h 	c #474724248484",
-"j 	c #393915156E6E",
-"k 	c #373711116A6A",
-"l 	c #343413136363",
-"z 	c #232319196E6E",
-"x 	c #292919197070",
-"c 	c #3C3C2C2C8282",
-"v 	c #444431318585",
-"b 	c #494934348A8A",
-"n 	c #505026268A8A",
-"m 	c #3D3D1B1B6E6E",
-"M 	c #31310E0E5C5C",
-"N 	c #2B2B0D0D5353",
-"B 	c #222207074A4A",
-"V 	c #52523C3C9292",
-"C 	c #58583C3C9494",
-"Z 	c #5D5D44449797",
-"A 	c #5C5C2E2E9292",
-"S 	c #676733339595",
-"D 	c #424228287575",
-"F 	c #29290A0A4F4F",
-"G 	c #6C6C4A4A9E9E",
-"H 	c #72725454A7A7",
-"J 	c #8C8C6D6DB2B2",
-"K 	c #343424246E6E",
-"L 	c #3A3A23236A6A",
-"P 	c #3A3A1C1C6767",
-"I 	c #24240A0A4B4B",
-"U 	c #151518186161",
-"Y 	c #76766F6FA5A5",
-"T 	c #ADAD9191CCCC",
-"R 	c #98988989D3D3",
-"E 	c #45453B3B8686",
-"W 	c #3C3C35357979",
-"Q 	c #363631317575",
-"! 	c #32322D2D6B6B",
-"~ 	c #323229296363",
-"^ 	c #30301F1F6262",
-"/ 	c #323218185E5E",
-"( 	c #272707074B4B",
-") 	c #202028286C6C",
-"_ 	c #1E1E1D1D6868",
-"` 	c #9A9A8282BBBB",
-"' 	c #C8C8B3B3D3D3",
-"] 	c #B3B3AFAFE7E7",
-"[ 	c #84847272C6C6",
-"{ 	c #58585757A3A3",
-"} 	c #3F3F3C3C8A8A",
-"| 	c #3B3B3A3A8484",
-" .	c #414139397D7D",
-"..	c #3D3D39397A7A",
-"X.	c #37372E2E6E6E",
-"o.	c #2C2C21215A5A",
-"O.	c #2E2E1B1B5B5B",
-"+.	c #F5F5EFEFF5F5",
-"@.	c #656566669A9A",
-"#.	c #47474B4B8E8E",
-"$.	c #3C3C44447B7B",
-"%.	c #444442428080",
-"&.	c #45453E3E8181",
-"*.	c #40403C3C8181",
-"=.	c #3D3D33337474",
-"-.	c #3B3B30306E6E",
-";.	c #38382D2D6969",
-":.	c #303026265D5D",
-">.	c #2C2C15155A5A",
-",.	c #1F1F1C1C7070",
-"<.	c #25251E1E7171",
-"1.	c #59595C5C9191",
-"2.	c #4D4D53538989",
-"3.	c #4C4C49498484",
-"4.	c #484845458585",
-"5.	c #494941418585",
-"6.	c #494940408181",
-"7.	c #2F2F1C1C5353",
-"8.	c #2B2B28287676",
-"9.	c #323231317F7F",
-"0.	c #545452528B8B",
-"q.	c #51514E4E8989",
-"w.	c #4E4E4B4B8C8C",
-"e.	c #4C4C47478686",
-"r.	c #46463D3D7E7E",
-"t.	c #434336367A7A",
-"y.	c #2B2B13135555",
-"u.	c #47473D3D8D8D",
-"i.	c #575757578E8E",
-"p.	c #48483E3E7F7F",
-"a.	c #46463A3A7D7D",
-"s.	c #424235357575",
-"d.	c #404034347171",
-"f.	c #BFBFCBCBFAFA",
-"g.	c #B8B8A8A8DDDD",
-"h.	c #5E5E60609292",
-"j.	c #565655558C8C",
-"k.	c #4B4B44448282",
-"l.	c #454539397B7B",
-"z.	c #434338387878",
-"x.	c #3F3F32326D6D",
-"c.	c #3D3D30306969",
-"v.	c #3A3A2E2E6363",
-"b.	c #36362A2A5C5C",
-"n.	c #343424245555",
-"m.	c #30301E1E4D4D",
-"M.	c #49493C3C8282",
-"N.	c #5E5E4F4F8C8C",
-"B.	c #56563B3B8B8B",
-"V.	c #545407078585",
-"C.	c #424234347272",
-"Z.	c #9797A4A4F7F7",
-"A.	c #444436367676",
-"S.	c #7D7D7979D5D5",
-"D.	c #464640408A8A",
-"F.	c #44444B4B8282",
-"G.	c #414107077777",
-"H.	c #71716161C1C1",
-"J.	c #303039397979",
-"K.	c #8E8E8E8EE6E6",
-"L.	c #404033338B8B",
-"P.	c #4A4A45458C8C",
-"I.	c #46463A3A8080",
-"U.	c #363629295454",
-"Y.	c #303022224848",
-"T.	c #424237377575",
-"R.	c #2E2E1D1D6363",
-"E.	c #79798383EAEA",
-"W.	c #74747B7BE4E4",
-"Q.	c #6D6D7676D6D6",
-"!.	c #6A6A7171CECE",
-"~.	c #66666969C6C6",
-"^.	c #62626565BCBC",
-"/.	c #5F5F6060B5B5",
-"(.	c #5B5B5B5BACAC",
-").	c #535353539898",
-"_.	c #4F4F4F4FA4A4",
-"`.	c #54544D4DA4A4",
-"'.	c #323204046B6B",
-"].	c #303035357979",
-"[.	c #313122224343",
-"{.	c #5A5A5B5BB7B7",
-"}.	c #484846468080",
-"|.	c #454541417575",
-" X	c #4B4B31318282",
-".X	c #47473C3C8484",
-"XX	c #3E3E35356E6E",
-"oX	c #2F2F26264040",
-"OX	c #2B2B23233A3A",
-"+X	c #262619195C5C",
-"@X	c #252515155A5A",
-"#X	c #55555151B3B3",
-"$X	c #3C3C2D2D5D5D",
-"%X	c #39392F2F5656",
-"&X	c #37372D2D5050",
-"*X	c #25251F1F3030",
-"=X	c #24241D1D4343",
-"-X	c #202013135656",
-";X	c #41413B3B6C6C",
-":X	c #444442429696",
-">X	c #212100005E5E",
-",X	c #444436367272",
-"<X	c #444436366F6F",
-"1X	c #424236366868",
-"2X	c #3F3F34346161",
-"3X	c #3C3C32325A5A",
-"4X	c #34342A2A4A4A",
-"5X	c #21211B1B2121",
-"6X	c #22221C1C6363",
-"7X	c #2D2D01015E5E",
-"8X	c #20201B1B2525",
-"9X	c #49492F2F7B7B",
-"0X	c #434334346C6C",
-"qX	c #323229294545",
-"wX	c #1C1C10104F4F",
-"eX	c #222217176363",
-"rX	c #37371E1E6B6B",
-"tX	c #424232326E6E",
-"yX	c #444433336969",
-"uX	c #424233336565",
-"iX	c #1E1E1A1A1E1E",
-"pX	c #161601014C4C",
-"aX	c #1C1C11115454",
-"sX	c #252503035B5B",
-"dX	c #414131316A6A",
-"fX	c #22221F1F7878",
-"gX	c #272724246767",
-"hX	c #1D1D16165E5E",
-"jX	c #131305055151",
-"kX	c #40402F2F6464",
-"lX	c #111107074E4E",
-"zX	c #0C0C05054B4B",
-"xX	c #22221E1E5757",
-"cX	c #1A1A0D0D4D4D",
-"vX	c #16160B0B4D4D",
-"bX	c #060604044747",
-"nX	c #040403034343",
-"mX	c #3B3B27276565",
-"MX	c #0E0E03034141",
-"NX	c #111106064A4A",
-"BX	c #0E0E04044646",
-"VX	c #111105053B3B",
-"CX	c #0D0D01013A3A",
-"ZX	c #030305053F3F",
-"AX	c #0F0F0F0F4C4C",
-"SX	c #020207073B3B",
-"DX	c #0D0D03034646",
-"FX	c #0B0B02023F3F",
-"GX	c #0D0D02023434",
-"HX	c #0A0A0E0E4444",
-"JX	c #161614145252",
-"KX	c #0B0B04044646",
-"LX	c #0A0A03034444",
-"PX	c #1D1D21215757",
-"IX	c #090910104040",
-"UX	c #18181E1E5353",
-"                                                                                                ",
-"  . . . . X X o o o o O + + @ @ @ @ @ @ @ # # # # # # $ $ % % & & & & *= - - - ; : > > , , ,   ",
-"  . . X X < < o o O O + @ 1 2 2 1 1 1 1 1 1 1 1 3 4 # # $ $ $ % % % 5= = 6 6 - ; ; > > , , 7   ",
-"  . 8 < < < o O O + @ @ 2 9 9 0 0 q q q q q q q w 3 4 4 e e $ $ $ $ % 5= = 6 6 6 ; ; > > r t   ",
-"  . X < y u O O + @ 1 2 i 0 0 p p p p p p p a a p a s 3 4 4 e e e e d 5 5 f f 6 6 6 ; ; r r t   ",
-"  X < y u O + + @ 2 9 0 g p p h h h h h h h p h h a a s s j k k j l d d 5 5 f f 6 6 r r r r r   ",
-"  X < y O z x x 9 0 g c v b n n n n n n n n n n n h a a s s j j m l M d d N f f B B B B r r r   ",
-"  < y u + z 2 0 c c b V C Z C C A A A A A S S S n h D w w m m m m k l M d d N f F F F B r r r   ",
-"  < y O z z 9 c b V Z G H H H G S G G J J H V v c g g K K K K L P l l l M M N N N N I B B r r   ",
-"  U u + z x i v C H Y J J J J H J T R H V E W W Q Q Q Q ! ! ! ~ ^ ^ / / M M M M M N ( B B r r   ",
-"  ) _ z x 9 g b Z Y ` ' ' ' T T ] [ { } |  .........W W Q Q X.! ~ ~ o.O./ / / / N F ( B B B r   ",
-"  ) ) z x i c V G J ' +.+.+.+.] [ @.#.$.%.%.%.&.*. . .....W =.-.X.;.~ :.o.O.^ >.N F ( B B B B   ",
-"  ) ,.<.2 g v C H J ' +.+.+.+.T Y 1.2.3.4.4.4.5.6.&.&. . ...W =.=.-.;.~ :.o.7.>.N F F ( B I I   ",
-"  ) ,.<.8.9.b C H J T +.+.+.' J @.1.0.q.q.w.e.4.5.6.&.r. . .t.W =.=.-.;.~ :.o.7.y.N F ( ( I I   ",
-"  8.8.8.9.| u.C G J T +.+.' ` Y @.1.i.0.q.q.e.e.5.6.p.r.a. .t.t.s.d.d.-.;.~ :.7.7.y.F F ( I I   ",
-"  9.c c c v b A S H ' f.g.` Y @.h.1.i.j.0.q.q.e.k.6.p.r.a.l.t.z.s.s.d.x.c.v.b.n.m.7.N F F F I   ",
-"  <.g M.N.B.B.n V.J f.R J @.h.h.1.i.i.j.j.0.q.3.k.6.p.r.a.l.l.z.s.C.d.x.x.c.v.b.n.m.y.N F F F   ",
-"  + x i v B.Z Z G g.Z.[ @.2.i.i.j.j.j.j.j.0.q.3.k.6.p.p.a.l.l.A.s.C.C.d.x.c.v.b.n.m.7.y.N N y.  ",
-"  O # 3 w p n Z ` f.S.H D.F.q.0.0.0.0.j.0.q.q.3.k.6.p.r.a.a.l.A.s.s.C.d.x.x.c.v.b.n.m.y.y.y.y.  ",
-"  O # 4 s a G.V.T Z.H.V J.%.e.w.q.0.0.0.0.q.q.e.k.6.p.r.a.a.l.z.A.s.C.d.d.x.c.v.b.n.m.7.>.y.y.  ",
-"  O # 4 s w G.A f.K.H L...4.P.w.w.w.q.q.q.q.e.e.5.6.M.I.I.a.a.l.z.A.s.d.d.x.c.v.v.U.Y.7.O.>.y.  ",
-"  $ # 4 3 s G.G f.S.Z 9.*.D.P.P.w.w.w.w.w.e.e.5.5.M.M.I.I.a.a.l.z.T.s.d.d.x.x.c.v.U.Y.m.R.>.>.  ",
-"  E.E.W.W.W.W.E.Z.E.W.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.!.!.!.!.!.~.~.~.~.~.~.^.^.^.^.^./././.(.{ { )._.`._.  ",
-"  + # 3 w s '.` f.H.V ].*.D.P.P.P.P.P.P.P.5.5.5.M.M.M.I.I.a.l.z.z.T.T.s.d.d.x.c.v.U.Y.[.^ O.>.  ",
-"  ~.~.~.~.~.~.K.Z.S.~.{.^.^.^.^.^.^.^.^././././././.(.(.(.(.(.(.{ { { { { ).).).w.w.}.|.P.u.}   ",
-"   .I.6. X X XT f.H.b ].*.E D.D.D.D.5.5..X.XM.M.I.I.a.a.l.l.z.z.T.T.T.d.XXx.c.v.b.U.oXOXR.+X@X  ",
-"  E.E.E.W.W.W.K.Z.E.W.Q.Q.Q.Q.Q.Q.Q.Q.!.!.!.!.!.!.~.~.~.~.~.~.^.^.^.^.^./././.(.{ { ).).#X_._.  ",
-"  & % $ e '.= H f.H.b 8.W *.E E E .X.X.XI.I.I.I.a.a.l.l.z.z.T.T.T.C.XXXXc.v.$X%X&XY.*X=X2 @X-X  ",
-"  {.{.{.{.{.#X~.Z.W.~.{.{./././././././././.(.(.(.(.(.(.(.{ { { { { { ).).).w.w.3.}.;X%.:X} }   ",
-"  & & % $ e >XV.f.S.C K X.W t. . .l.l.t.t.t.t.A.A.A.,X,X,X,X,X<X;X1X1X2X3X%X&X4XoX*X5Xo.6X-X-X  ",
-"  & & % $ $ >X7X` Z.Z D ! =.=.s.t.t.t.A.A.s.A.,X,X,X,X<X<X<X<X;X1X2X2X3X%X&X4XoXOX8X5X<.@X-X-X  ",
-"  8 & & $ e K 9XJ f.^. XK X.=.=.s.s.s.s.s.C.C.C.C.<X0X0X0X1X1X1X2X2X3X%X&X4XqXOX*X8X=X<.-X-XwX  ",
-"  8 & eXK k.@.M. Xg.E.B.rX~ -.d.d.C.C.C.C.C.tX0X0X0XyXyX1X1XuX2X2X3X%X&X4XqXoXOX8XiX6XeX-X-XwX  ",
-"  6XQ h.Y N.K e pXB.f./.9Xo.;.-.x.d.tXtXtXtXtX0X0XyXyXyXuXuX2X2X3X%X&X4XqXoXOX*XiX=X_ aX-XaXwX  ",
-"  Y Y  .R.@X% sX= 7XT Z.V P :.;.c.x.x.x.tXdXdXdXyXyXuXuX2X2X3X3X%X&X4XqXoXOX*X8X*XfXaXaXaXwXwX  ",
-"  gXhX& * & 5 5 sXjXa ] S.9X/ ~ v.c.dXdXdXdXdXuXuXuXkX2X2X3X%X%X&X4XqXoXOX*X8XiX<.hXwXwXaXwXwX  ",
-"  8 lXlXjX= * 5 5= zX9X] H.D 7.b.v.v.kXc.kXkXkXkXkX2X$X3X%X&X&X4XqXoXOX*X8XiXxXhXwXcXcXwXwXwX  ",
-"  zXzXlXlXjX== f f sXD Y ] ~.D 7.n.b.v.v.kXkXkXkX$X$X%X%X&X4XqXoXoXOX*X8X5XgXu cXvXvXcXcXwXwX  ",
-"  bXbXzXlXlX-= * @XX.h.e D T S.D n.m.b.$X$X$X$X$X%X%X&X&X4XqXoXOX*X8X8X*X<.hXvX; ; vXvXvXcXwX  ",
-"  nXbXzXzXlXlX- -XX.Y R.pXpXP J K.Z mXm.n.U.U.U.U.U.4X4XY.oXOX*X8X8X8X=X,.aXvX; > > > t t t cX  ",
-"  nXbXbXzXzXlXaXXXY +Xf= f= 7XtXR R   mXn.Y.[.[.[.[.OX*X*X8X5X*X=X,.u vXvX; > > MXMX, 7 t t   ",
-"  nXnXnXbXzXvX-.Y +XcX6 6= == d L B.G H `.X.:.7.m.=X=X=X=X=X6X,.u cXvXNX: BX> MXVXCXVX7 7 7   ",
-"  ZXZXnXbXAXgX@.+XvX; - - - - * @XR.>.sX>.R.i 0 x eXeXeXeXO hXaXcXvXNX: BXMXMXMXVXCXCXCXVX7 7   ",
-"  SXZXZXAXgXN.aXNX: : NXNXNX- * +X+X* 6 6 6 * * * * * * * vXvX- NX: DXBXMXMXFXCXCXCXCXGXVXVX7   ",
-"  SXSXHXgX0.JXKXLXKXKXDX: : NX* @X-X- - - - - - - - - - - NX: DXDXDXMXMXFXFXCXCXCXCXGXGXGXVXVX  ",
-"  SXHXPX3.JXnXnXnXnXbXLXKXKXNXaX-XvX: : NX: : : : : : : BXDXDXLXMXMXFXFXCXCXCXCXGXGXGXGXGXGXGX  ",
-"  IXUX$.AXZXZXZXZXnXnXnXLXLXNXJXvXBXDXBXBXBXBXDXDXDXDXLXDXLXLXFXFXFXFXCXCXCXCXGXGXGXGXGXGXGXGX  ",
-"                                                                                                "};
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_window_16.gif b/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_window_16.gif
deleted file mode 100644
index 05626b1..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_window_16.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_window_32.gif b/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_window_32.gif
deleted file mode 100644
index b432f88..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/icons/alt_window_32.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/org.eclipse.statet.rj.servi.rcpdemo.product b/examples/org.eclipse.statet.rj.servi.rcpdemo/org.eclipse.statet.rj.servi.rcpdemo.product
deleted file mode 100644
index edb4e62..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/org.eclipse.statet.rj.servi.rcpdemo.product
+++ /dev/null
@@ -1,129 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?pde version="3.5"?>
-
-<product name="RServi RCP Demo" id="org.eclipse.statet.rj.servi.rcpdemo.product" application="org.eclipse.statet.rj.servi.rcpdemo.application" version="0.4.0.qualifier" useFeatures="false" includeLaunchers="true">
-
-   <configIni use="default">
-   </configIni>
-
-   <launcherArgs>
-      <vmArgs>-Xms40m -Xmx512m
-      </vmArgs>
-      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
-      </vmArgsMac>
-   </launcherArgs>
-
-   <windowImages i16="icons/alt_window_16.gif" i32="icons/alt_window_32.gif"/>
-
-   <splash
-      location="org.eclipse.statet.rj.servi.rcpdemo"
-      startupProgressRect="20,190,415,15"
-      startupMessageRect="20,210,415,20"
-      startupForegroundColor="000000" />
-   <launcher>
-      <solaris/>
-      <win useIco="false">
-         <bmp/>
-      </win>
-   </launcher>
-
-   <vm>
-   </vm>
-
-   <plugins>
-      <plugin id="com.ibm.icu"/>
-      <plugin id="org.eclipse.statet.ecommons.rmi.core"/>
-      <plugin id="org.eclipse.statet.ecommons.coremisc"/>
-      <plugin id="org.eclipse.statet.ecommons.uimisc"/>
-      <plugin id="org.eclipse.statet.rj.data"/>
-      <plugin id="org.eclipse.statet.rj.client"/>
-      <plugin id="org.eclipse.statet.rj.services.core"/>
-      <plugin id="org.eclipse.statet.rj.eclient.core"/>
-      <plugin id="org.eclipse.statet.rj.eclient.graphics"/>
-      <plugin id="org.eclipse.statet.rj.server"/>
-      <plugin id="org.eclipse.statet.rj.servi"/>
-      <plugin id="org.eclipse.statet.rj.servi.rcpdemo"/>
-      <plugin id="javax.annotation"/>
-      <plugin id="javax.inject"/>
-      <plugin id="javax.xml"/>
-      <plugin id="org.apache.batik.css"/>
-      <plugin id="org.apache.batik.util"/>
-      <plugin id="org.apache.batik.util.gui"/>
-      <plugin id="org.apache.commons.jxpath"/>
-      <plugin id="org.eclipse.core.commands"/>
-      <plugin id="org.eclipse.core.contenttype"/>
-      <plugin id="org.eclipse.core.databinding"/>
-      <plugin id="org.eclipse.core.databinding.observable"/>
-      <plugin id="org.eclipse.core.databinding.property"/>
-      <plugin id="org.eclipse.core.expressions"/>
-      <plugin id="org.eclipse.core.jobs"/>
-      <plugin id="org.eclipse.core.runtime"/>
-      <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>
-      <plugin id="org.eclipse.e4.core.commands"/>
-      <plugin id="org.eclipse.e4.core.contexts"/>
-      <plugin id="org.eclipse.e4.core.di"/>
-      <plugin id="org.eclipse.e4.core.di.annotations"/>
-      <plugin id="org.eclipse.e4.core.di.extensions"/>
-      <plugin id="org.eclipse.e4.core.services"/>
-      <plugin id="org.eclipse.e4.emf.xpath"/>
-      <plugin id="org.eclipse.e4.ui.bindings"/>
-      <plugin id="org.eclipse.e4.ui.css.core"/>
-      <plugin id="org.eclipse.e4.ui.css.swt"/>
-      <plugin id="org.eclipse.e4.ui.css.swt.theme"/>
-      <plugin id="org.eclipse.e4.ui.di"/>
-      <plugin id="org.eclipse.e4.ui.model.workbench"/>
-      <plugin id="org.eclipse.e4.ui.services"/>
-      <plugin id="org.eclipse.e4.ui.widgets"/>
-      <plugin id="org.eclipse.e4.ui.workbench"/>
-      <plugin id="org.eclipse.e4.ui.workbench.addons.swt"/>
-      <plugin id="org.eclipse.e4.ui.workbench.renderers.swt"/>
-      <plugin id="org.eclipse.e4.ui.workbench.swt"/>
-      <plugin id="org.eclipse.e4.ui.workbench3"/>
-      <plugin id="org.eclipse.emf.common"/>
-      <plugin id="org.eclipse.emf.ecore"/>
-      <plugin id="org.eclipse.emf.ecore.change"/>
-      <plugin id="org.eclipse.emf.ecore.xmi"/>
-      <plugin id="org.eclipse.equinox.app"/>
-      <plugin id="org.eclipse.equinox.common"/>
-      <plugin id="org.eclipse.equinox.ds"/>
-      <plugin id="org.eclipse.equinox.event"/>
-      <plugin id="org.eclipse.equinox.preferences"/>
-      <plugin id="org.eclipse.equinox.registry"/>
-      <plugin id="org.eclipse.equinox.util"/>
-      <plugin id="org.eclipse.help"/>
-      <plugin id="org.eclipse.jface"/>
-      <plugin id="org.eclipse.jface.databinding"/>
-      <plugin id="org.eclipse.osgi"/>
-      <plugin id="org.eclipse.osgi.compatibility.state" fragment="true"/>
-      <plugin id="org.eclipse.osgi.services"/>
-      <plugin id="org.eclipse.swt"/>
-      <plugin id="org.eclipse.swt.cocoa.macosx" fragment="true"/>
-      <plugin id="org.eclipse.swt.cocoa.macosx.x86_64" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.aix.ppc" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.aix.ppc64" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.hpux.ia64_32" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.linux.ppc64" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.linux.s390" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.linux.s390x" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.linux.x86" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.linux.x86_64" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.solaris.sparc" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.solaris.x86" fragment="true"/>
-      <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/>
-      <plugin id="org.eclipse.swt.win32.win32.x86_64" fragment="true"/>
-      <plugin id="org.eclipse.ui"/>
-      <plugin id="org.eclipse.ui.workbench"/>
-      <plugin id="org.w3c.css.sac"/>
-      <plugin id="org.w3c.dom.events"/>
-      <plugin id="org.w3c.dom.smil"/>
-      <plugin id="org.w3c.dom.svg"/>
-   </plugins>
-
-   <configurations>
-      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
-      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
-      <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="1" />
-      <plugin id="org.eclipse.osgi" autoStart="true" startLevel="-1" />
-   </configurations>
-
-</product>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo/plugin.xml b/examples/org.eclipse.statet.rj.servi.rcpdemo/plugin.xml
deleted file mode 100644
index c002914..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo/plugin.xml
+++ /dev/null
@@ -1,127 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.4"?>
-<plugin>
-
-   <extension
-         id="org.eclipse.statet.rj.servi.rcpdemo.application"
-         point="org.eclipse.core.runtime.applications">
-      <application>
-         <run
-               class="org.eclipse.statet.internal.rj.servi.rcpdemo.Application">
-         </run>
-      </application>
-   </extension>
-   <extension
-         id="product"
-         point="org.eclipse.core.runtime.products">
-      <product
-            application="org.eclipse.statet.rj.servi.rcpdemo.application"
-            name="RServi RCP Demo">
-         <property
-               name="windowImages"
-               value="icons/alt_window_16.gif,icons/alt_window_32.gif">
-         </property>
-         <property
-               name="appName"
-               value="RServi RCP Demo">
-         </property>
-         <property
-               name="startupProgressRect"
-               value="20,190,415,15">
-         </property>
-         <property
-               name="startupForegroundColor"
-               value="000000">
-         </property>
-         <property
-               name="startupMessageRect"
-               value="20,210,415,20">
-         </property>
-         <property
-               name="preferenceCustomization"
-               value="plugin_customization.ini">
-         </property>
-      </product>
-   </extension>
-   
-   <extension
-         point="org.eclipse.ui.perspectives">
-      <perspective
-            name="RCP Perspective"
-            class="org.eclipse.statet.internal.rj.servi.rcpdemo.Perspective"
-            id="org.eclipse.statet.rj.servi.rcpdemo.perspective">
-      </perspective>
-   </extension>
-   <extension
-         point="org.eclipse.ui.menus">
-      <menuContribution
-            locationURI="menu:org.eclipse.ui.main.menu">
-         <menu id="file"
-               label="&amp;File">
-         </menu>
-      </menuContribution>
-      <menuContribution
-            locationURI="menu:file">
-         <command
-               commandId="org.eclipse.ui.file.exit"
-               style="push">
-         </command>
-      </menuContribution>
-   </extension>
-   
-   <extension
-         point="org.eclipse.ui.views">
-      <view
-            allowMultiple="false"
-            class="org.eclipse.statet.internal.rj.servi.rcpdemo.views.RServiConfigView"
-            id="org.eclipse.statet.rj.servi.rcpdemo.views.RServiConfig"
-            name="Config"
-            restorable="true">
-      </view>
-      <view
-            allowMultiple="true"
-            class="org.eclipse.statet.internal.rj.servi.rcpdemo.views.GraphDemoView"
-            id="org.eclipse.statet.rj.servi.rcpdemo.views.GraphDemo"
-            name="Graph"
-            restorable="true">
-      </view>
-      <view
-            id="org.eclipse.ui.views.ProgressView"
-            class="org.eclipse.ui.ExtensionFactory:progressView"
-            name="Progress">
-      </view>
-   </extension>
-   <extension
-         point="org.eclipse.ui.perspectiveExtensions">
-      <perspectiveExtension
-            targetID="*">
-         <view
-               id="org.eclipse.statet.rj.servi.rcpdemo.views.GraphDemo"
-               closeable="false"
-               minimized="false"
-               relative="org.eclipse.ui.editorss"
-               relationship="left"
-               visible="true">
-         </view>
-         <view
-               id="org.eclipse.statet.rj.servi.rcpdemo.views.RServiConfig"
-               closeable="false"
-               minimized="false"
-               ratio="0.3f"
-               relative="org.eclipse.statet.rj.servi.rcpdemo.views.GraphDemo"
-               relationship="left"
-               visible="true">
-         </view>
-         <view
-               id="org.eclipse.ui.views.ProgressView"
-               closeable="true"
-               minimized="false"
-               ratio="0.75"
-               relative="org.eclipse.statet.rj.servi.rcpdemo.views.RServiConfig"
-               relationship="bottom"
-               visible="false">
-         </view>
-      </perspectiveExtension>
-   </extension>
-
-</plugin>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/.project b/examples/org.eclipse.statet.rj.servi.rcpdemo2/.project
deleted file mode 100644
index af023be..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.statet.rj.servi.rcpdemo2</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/RServi RCP Demo2.launch b/examples/org.eclipse.statet.rj.servi.rcpdemo2/RServi RCP Demo2.launch
deleted file mode 100644
index d38a114..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/RServi RCP Demo2.launch
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.pde.ui.RuntimeWorkbench">
-<setAttribute key="additional_plugins"/>
-<booleanAttribute key="append.args" value="true"/>
-<stringAttribute key="application" value="org.eclipse.statet.rj.servi.rcpdemo.application"/>
-<booleanAttribute key="askclear" value="false"/>
-<booleanAttribute key="automaticAdd" value="false"/>
-<booleanAttribute key="automaticValidate" value="false"/>
-<stringAttribute key="bootstrap" value=""/>
-<stringAttribute key="checked" value="[NONE]"/>
-<booleanAttribute key="clearConfig" value="true"/>
-<booleanAttribute key="clearws" value="true"/>
-<booleanAttribute key="clearwslog" value="true"/>
-<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/RServi RCP Demo2"/>
-<booleanAttribute key="default" value="false"/>
-<stringAttribute key="featureDefaultLocation" value="workspace"/>
-<stringAttribute key="featurePluginResolution" value="workspace"/>
-<booleanAttribute key="includeOptional" value="false"/>
-<stringAttribute key="location" value="${workspace_loc}/../runtime-org.eclipse.statet.rj.servi.rcpdemo.product"/>
-<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xms40m -Xmx512m"/>
-<booleanAttribute key="pde.generated.config" value="false"/>
-<stringAttribute key="pde.version" value="3.3"/>
-<stringAttribute key="product" value="org.eclipse.statet.rj.servi.rcpdemo2.product"/>
-<stringAttribute key="productFile" value="\org.eclipse.statet.rj.servi.rcpdemo2\org.eclipse.statet.rj.servi.rcpdemo.product"/>
-<setAttribute key="selected_features">
-<setEntry value="org.eclipse.statet.rj.servi.e:default"/>
-<setEntry value="org.eclipse.e4.rcp:default"/>
-<setEntry value="org.eclipse.emf.common:default"/>
-<setEntry value="org.eclipse.emf.ecore:default"/>
-<setEntry value="org.eclipse.rcp:default"/>
-</setAttribute>
-<booleanAttribute key="show_selected_only" value="false"/>
-<booleanAttribute key="tracing" value="false"/>
-<booleanAttribute key="useCustomFeatures" value="true"/>
-<booleanAttribute key="useDefaultConfig" value="true"/>
-<booleanAttribute key="useDefaultConfigArea" value="true"/>
-<booleanAttribute key="useProduct" value="true"/>
-<booleanAttribute key="usefeatures" value="false"/>
-</launchConfiguration>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_about.gif b/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_about.gif
deleted file mode 100644
index 20d9ad2..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_about.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_launcher.icns b/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_launcher.icns
deleted file mode 100644
index b77a6a6..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_launcher.icns
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_launcher.ico b/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_launcher.ico
deleted file mode 100644
index d548f71..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_launcher.ico
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_launcher.xpm b/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_launcher.xpm
deleted file mode 100644
index d2918c1..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_launcher.xpm
+++ /dev/null
@@ -1,307 +0,0 @@
-/* XPM */
-static char * icon48_xpm[]= {
-"48 48 256 2",
-"  	c #4B4B3B3B9090",
-". 	c #0D0D0E0E5454",
-"X 	c #11110E0E5B5B",
-"o 	c #17170F0F6363",
-"O 	c #1D1D13136969",
-"+ 	c #212114146C6C",
-"@ 	c #252514147171",
-"# 	c #282811116C6C",
-"$ 	c #26260D0D6363",
-"% 	c #22220B0B5E5E",
-"& 	c #1C1C0B0B5A5A",
-"* 	c #1C1C0B0B5252",
-"= 	c #1B1B05055353",
-"- 	c #161606064D4D",
-"; 	c #161605054949",
-": 	c #111104044848",
-"> 	c #131304044545",
-", 	c #131305054242",
-"< 	c #141410105E5E",
-"1 	c #2C2C15157373",
-"2 	c #2B2B1B1B7575",
-"3 	c #343416167272",
-"4 	c #313113136E6E",
-"5 	c #222209095757",
-"6 	c #1B1B06064D4D",
-"7 	c #15150B0B4242",
-"8 	c #13130C0C5555",
-"9 	c #2E2E1B1B7878",
-"0 	c #33331F1F7C7C",
-"q 	c #343418187878",
-"w 	c #3B3B1C1C7575",
-"e 	c #2E2E10106767",
-"r 	c #1B1B07074747",
-"t 	c #18180B0B4646",
-"y 	c #151513136262",
-"u 	c #1A1A15156464",
-"i 	c #34341F1F7777",
-"p 	c #40401E1E8080",
-"a 	c #42421B1B7A7A",
-"s 	c #3B3B15157474",
-"d 	c #2B2B0B0B5B5B",
-"f 	c #222207075252",
-"g 	c #373727277A7A",
-"h 	c #474724248484",
-"j 	c #393915156E6E",
-"k 	c #373711116A6A",
-"l 	c #343413136363",
-"z 	c #232319196E6E",
-"x 	c #292919197070",
-"c 	c #3C3C2C2C8282",
-"v 	c #444431318585",
-"b 	c #494934348A8A",
-"n 	c #505026268A8A",
-"m 	c #3D3D1B1B6E6E",
-"M 	c #31310E0E5C5C",
-"N 	c #2B2B0D0D5353",
-"B 	c #222207074A4A",
-"V 	c #52523C3C9292",
-"C 	c #58583C3C9494",
-"Z 	c #5D5D44449797",
-"A 	c #5C5C2E2E9292",
-"S 	c #676733339595",
-"D 	c #424228287575",
-"F 	c #29290A0A4F4F",
-"G 	c #6C6C4A4A9E9E",
-"H 	c #72725454A7A7",
-"J 	c #8C8C6D6DB2B2",
-"K 	c #343424246E6E",
-"L 	c #3A3A23236A6A",
-"P 	c #3A3A1C1C6767",
-"I 	c #24240A0A4B4B",
-"U 	c #151518186161",
-"Y 	c #76766F6FA5A5",
-"T 	c #ADAD9191CCCC",
-"R 	c #98988989D3D3",
-"E 	c #45453B3B8686",
-"W 	c #3C3C35357979",
-"Q 	c #363631317575",
-"! 	c #32322D2D6B6B",
-"~ 	c #323229296363",
-"^ 	c #30301F1F6262",
-"/ 	c #323218185E5E",
-"( 	c #272707074B4B",
-") 	c #202028286C6C",
-"_ 	c #1E1E1D1D6868",
-"` 	c #9A9A8282BBBB",
-"' 	c #C8C8B3B3D3D3",
-"] 	c #B3B3AFAFE7E7",
-"[ 	c #84847272C6C6",
-"{ 	c #58585757A3A3",
-"} 	c #3F3F3C3C8A8A",
-"| 	c #3B3B3A3A8484",
-" .	c #414139397D7D",
-"..	c #3D3D39397A7A",
-"X.	c #37372E2E6E6E",
-"o.	c #2C2C21215A5A",
-"O.	c #2E2E1B1B5B5B",
-"+.	c #F5F5EFEFF5F5",
-"@.	c #656566669A9A",
-"#.	c #47474B4B8E8E",
-"$.	c #3C3C44447B7B",
-"%.	c #444442428080",
-"&.	c #45453E3E8181",
-"*.	c #40403C3C8181",
-"=.	c #3D3D33337474",
-"-.	c #3B3B30306E6E",
-";.	c #38382D2D6969",
-":.	c #303026265D5D",
-">.	c #2C2C15155A5A",
-",.	c #1F1F1C1C7070",
-"<.	c #25251E1E7171",
-"1.	c #59595C5C9191",
-"2.	c #4D4D53538989",
-"3.	c #4C4C49498484",
-"4.	c #484845458585",
-"5.	c #494941418585",
-"6.	c #494940408181",
-"7.	c #2F2F1C1C5353",
-"8.	c #2B2B28287676",
-"9.	c #323231317F7F",
-"0.	c #545452528B8B",
-"q.	c #51514E4E8989",
-"w.	c #4E4E4B4B8C8C",
-"e.	c #4C4C47478686",
-"r.	c #46463D3D7E7E",
-"t.	c #434336367A7A",
-"y.	c #2B2B13135555",
-"u.	c #47473D3D8D8D",
-"i.	c #575757578E8E",
-"p.	c #48483E3E7F7F",
-"a.	c #46463A3A7D7D",
-"s.	c #424235357575",
-"d.	c #404034347171",
-"f.	c #BFBFCBCBFAFA",
-"g.	c #B8B8A8A8DDDD",
-"h.	c #5E5E60609292",
-"j.	c #565655558C8C",
-"k.	c #4B4B44448282",
-"l.	c #454539397B7B",
-"z.	c #434338387878",
-"x.	c #3F3F32326D6D",
-"c.	c #3D3D30306969",
-"v.	c #3A3A2E2E6363",
-"b.	c #36362A2A5C5C",
-"n.	c #343424245555",
-"m.	c #30301E1E4D4D",
-"M.	c #49493C3C8282",
-"N.	c #5E5E4F4F8C8C",
-"B.	c #56563B3B8B8B",
-"V.	c #545407078585",
-"C.	c #424234347272",
-"Z.	c #9797A4A4F7F7",
-"A.	c #444436367676",
-"S.	c #7D7D7979D5D5",
-"D.	c #464640408A8A",
-"F.	c #44444B4B8282",
-"G.	c #414107077777",
-"H.	c #71716161C1C1",
-"J.	c #303039397979",
-"K.	c #8E8E8E8EE6E6",
-"L.	c #404033338B8B",
-"P.	c #4A4A45458C8C",
-"I.	c #46463A3A8080",
-"U.	c #363629295454",
-"Y.	c #303022224848",
-"T.	c #424237377575",
-"R.	c #2E2E1D1D6363",
-"E.	c #79798383EAEA",
-"W.	c #74747B7BE4E4",
-"Q.	c #6D6D7676D6D6",
-"!.	c #6A6A7171CECE",
-"~.	c #66666969C6C6",
-"^.	c #62626565BCBC",
-"/.	c #5F5F6060B5B5",
-"(.	c #5B5B5B5BACAC",
-").	c #535353539898",
-"_.	c #4F4F4F4FA4A4",
-"`.	c #54544D4DA4A4",
-"'.	c #323204046B6B",
-"].	c #303035357979",
-"[.	c #313122224343",
-"{.	c #5A5A5B5BB7B7",
-"}.	c #484846468080",
-"|.	c #454541417575",
-" X	c #4B4B31318282",
-".X	c #47473C3C8484",
-"XX	c #3E3E35356E6E",
-"oX	c #2F2F26264040",
-"OX	c #2B2B23233A3A",
-"+X	c #262619195C5C",
-"@X	c #252515155A5A",
-"#X	c #55555151B3B3",
-"$X	c #3C3C2D2D5D5D",
-"%X	c #39392F2F5656",
-"&X	c #37372D2D5050",
-"*X	c #25251F1F3030",
-"=X	c #24241D1D4343",
-"-X	c #202013135656",
-";X	c #41413B3B6C6C",
-":X	c #444442429696",
-">X	c #212100005E5E",
-",X	c #444436367272",
-"<X	c #444436366F6F",
-"1X	c #424236366868",
-"2X	c #3F3F34346161",
-"3X	c #3C3C32325A5A",
-"4X	c #34342A2A4A4A",
-"5X	c #21211B1B2121",
-"6X	c #22221C1C6363",
-"7X	c #2D2D01015E5E",
-"8X	c #20201B1B2525",
-"9X	c #49492F2F7B7B",
-"0X	c #434334346C6C",
-"qX	c #323229294545",
-"wX	c #1C1C10104F4F",
-"eX	c #222217176363",
-"rX	c #37371E1E6B6B",
-"tX	c #424232326E6E",
-"yX	c #444433336969",
-"uX	c #424233336565",
-"iX	c #1E1E1A1A1E1E",
-"pX	c #161601014C4C",
-"aX	c #1C1C11115454",
-"sX	c #252503035B5B",
-"dX	c #414131316A6A",
-"fX	c #22221F1F7878",
-"gX	c #272724246767",
-"hX	c #1D1D16165E5E",
-"jX	c #131305055151",
-"kX	c #40402F2F6464",
-"lX	c #111107074E4E",
-"zX	c #0C0C05054B4B",
-"xX	c #22221E1E5757",
-"cX	c #1A1A0D0D4D4D",
-"vX	c #16160B0B4D4D",
-"bX	c #060604044747",
-"nX	c #040403034343",
-"mX	c #3B3B27276565",
-"MX	c #0E0E03034141",
-"NX	c #111106064A4A",
-"BX	c #0E0E04044646",
-"VX	c #111105053B3B",
-"CX	c #0D0D01013A3A",
-"ZX	c #030305053F3F",
-"AX	c #0F0F0F0F4C4C",
-"SX	c #020207073B3B",
-"DX	c #0D0D03034646",
-"FX	c #0B0B02023F3F",
-"GX	c #0D0D02023434",
-"HX	c #0A0A0E0E4444",
-"JX	c #161614145252",
-"KX	c #0B0B04044646",
-"LX	c #0A0A03034444",
-"PX	c #1D1D21215757",
-"IX	c #090910104040",
-"UX	c #18181E1E5353",
-"                                                                                                ",
-"  . . . . X X o o o o O + + @ @ @ @ @ @ @ # # # # # # $ $ % % & & & & *= - - - ; : > > , , ,   ",
-"  . . X X < < o o O O + @ 1 2 2 1 1 1 1 1 1 1 1 3 4 # # $ $ $ % % % 5= = 6 6 - ; ; > > , , 7   ",
-"  . 8 < < < o O O + @ @ 2 9 9 0 0 q q q q q q q w 3 4 4 e e $ $ $ $ % 5= = 6 6 6 ; ; > > r t   ",
-"  . X < y u O O + @ 1 2 i 0 0 p p p p p p p a a p a s 3 4 4 e e e e d 5 5 f f 6 6 6 ; ; r r t   ",
-"  X < y u O + + @ 2 9 0 g p p h h h h h h h p h h a a s s j k k j l d d 5 5 f f 6 6 r r r r r   ",
-"  X < y O z x x 9 0 g c v b n n n n n n n n n n n h a a s s j j m l M d d N f f B B B B r r r   ",
-"  < y u + z 2 0 c c b V C Z C C A A A A A S S S n h D w w m m m m k l M d d N f F F F B r r r   ",
-"  < y O z z 9 c b V Z G H H H G S G G J J H V v c g g K K K K L P l l l M M N N N N I B B r r   ",
-"  U u + z x i v C H Y J J J J H J T R H V E W W Q Q Q Q ! ! ! ~ ^ ^ / / M M M M M N ( B B r r   ",
-"  ) _ z x 9 g b Z Y ` ' ' ' T T ] [ { } |  .........W W Q Q X.! ~ ~ o.O./ / / / N F ( B B B r   ",
-"  ) ) z x i c V G J ' +.+.+.+.] [ @.#.$.%.%.%.&.*. . .....W =.-.X.;.~ :.o.O.^ >.N F ( B B B B   ",
-"  ) ,.<.2 g v C H J ' +.+.+.+.T Y 1.2.3.4.4.4.5.6.&.&. . ...W =.=.-.;.~ :.o.7.>.N F F ( B I I   ",
-"  ) ,.<.8.9.b C H J T +.+.+.' J @.1.0.q.q.w.e.4.5.6.&.r. . .t.W =.=.-.;.~ :.o.7.y.N F ( ( I I   ",
-"  8.8.8.9.| u.C G J T +.+.' ` Y @.1.i.0.q.q.e.e.5.6.p.r.a. .t.t.s.d.d.-.;.~ :.7.7.y.F F ( I I   ",
-"  9.c c c v b A S H ' f.g.` Y @.h.1.i.j.0.q.q.e.k.6.p.r.a.l.t.z.s.s.d.x.c.v.b.n.m.7.N F F F I   ",
-"  <.g M.N.B.B.n V.J f.R J @.h.h.1.i.i.j.j.0.q.3.k.6.p.r.a.l.l.z.s.C.d.x.x.c.v.b.n.m.y.N F F F   ",
-"  + x i v B.Z Z G g.Z.[ @.2.i.i.j.j.j.j.j.0.q.3.k.6.p.p.a.l.l.A.s.C.C.d.x.c.v.b.n.m.7.y.N N y.  ",
-"  O # 3 w p n Z ` f.S.H D.F.q.0.0.0.0.j.0.q.q.3.k.6.p.r.a.a.l.A.s.s.C.d.x.x.c.v.b.n.m.y.y.y.y.  ",
-"  O # 4 s a G.V.T Z.H.V J.%.e.w.q.0.0.0.0.q.q.e.k.6.p.r.a.a.l.z.A.s.C.d.d.x.c.v.b.n.m.7.>.y.y.  ",
-"  O # 4 s w G.A f.K.H L...4.P.w.w.w.q.q.q.q.e.e.5.6.M.I.I.a.a.l.z.A.s.d.d.x.c.v.v.U.Y.7.O.>.y.  ",
-"  $ # 4 3 s G.G f.S.Z 9.*.D.P.P.w.w.w.w.w.e.e.5.5.M.M.I.I.a.a.l.z.T.s.d.d.x.x.c.v.U.Y.m.R.>.>.  ",
-"  E.E.W.W.W.W.E.Z.E.W.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.!.!.!.!.!.~.~.~.~.~.~.^.^.^.^.^./././.(.{ { )._.`._.  ",
-"  + # 3 w s '.` f.H.V ].*.D.P.P.P.P.P.P.P.5.5.5.M.M.M.I.I.a.l.z.z.T.T.s.d.d.x.c.v.U.Y.[.^ O.>.  ",
-"  ~.~.~.~.~.~.K.Z.S.~.{.^.^.^.^.^.^.^.^././././././.(.(.(.(.(.(.{ { { { { ).).).w.w.}.|.P.u.}   ",
-"   .I.6. X X XT f.H.b ].*.E D.D.D.D.5.5..X.XM.M.I.I.a.a.l.l.z.z.T.T.T.d.XXx.c.v.b.U.oXOXR.+X@X  ",
-"  E.E.E.W.W.W.K.Z.E.W.Q.Q.Q.Q.Q.Q.Q.Q.!.!.!.!.!.!.~.~.~.~.~.~.^.^.^.^.^./././.(.{ { ).).#X_._.  ",
-"  & % $ e '.= H f.H.b 8.W *.E E E .X.X.XI.I.I.I.a.a.l.l.z.z.T.T.T.C.XXXXc.v.$X%X&XY.*X=X2 @X-X  ",
-"  {.{.{.{.{.#X~.Z.W.~.{.{./././././././././.(.(.(.(.(.(.(.{ { { { { { ).).).w.w.3.}.;X%.:X} }   ",
-"  & & % $ e >XV.f.S.C K X.W t. . .l.l.t.t.t.t.A.A.A.,X,X,X,X,X<X;X1X1X2X3X%X&X4XoX*X5Xo.6X-X-X  ",
-"  & & % $ $ >X7X` Z.Z D ! =.=.s.t.t.t.A.A.s.A.,X,X,X,X<X<X<X<X;X1X2X2X3X%X&X4XoXOX8X5X<.@X-X-X  ",
-"  8 & & $ e K 9XJ f.^. XK X.=.=.s.s.s.s.s.C.C.C.C.<X0X0X0X1X1X1X2X2X3X%X&X4XqXOX*X8X=X<.-X-XwX  ",
-"  8 & eXK k.@.M. Xg.E.B.rX~ -.d.d.C.C.C.C.C.tX0X0X0XyXyX1X1XuX2X2X3X%X&X4XqXoXOX8XiX6XeX-X-XwX  ",
-"  6XQ h.Y N.K e pXB.f./.9Xo.;.-.x.d.tXtXtXtXtX0X0XyXyXyXuXuX2X2X3X%X&X4XqXoXOX*XiX=X_ aX-XaXwX  ",
-"  Y Y  .R.@X% sX= 7XT Z.V P :.;.c.x.x.x.tXdXdXdXyXyXuXuX2X2X3X3X%X&X4XqXoXOX*X8X*XfXaXaXaXwXwX  ",
-"  gXhX& * & 5 5 sXjXa ] S.9X/ ~ v.c.dXdXdXdXdXuXuXuXkX2X2X3X%X%X&X4XqXoXOX*X8XiX<.hXwXwXaXwXwX  ",
-"  8 lXlXjX= * 5 5= zX9X] H.D 7.b.v.v.kXc.kXkXkXkXkX2X$X3X%X&X&X4XqXoXOX*X8XiXxXhXwXcXcXwXwXwX  ",
-"  zXzXlXlXjX== f f sXD Y ] ~.D 7.n.b.v.v.kXkXkXkX$X$X%X%X&X4XqXoXoXOX*X8X5XgXu cXvXvXcXcXwXwX  ",
-"  bXbXzXlXlX-= * @XX.h.e D T S.D n.m.b.$X$X$X$X$X%X%X&X&X4XqXoXOX*X8X8X*X<.hXvX; ; vXvXvXcXwX  ",
-"  nXbXzXzXlXlX- -XX.Y R.pXpXP J K.Z mXm.n.U.U.U.U.U.4X4XY.oXOX*X8X8X8X=X,.aXvX; > > > t t t cX  ",
-"  nXbXbXzXzXlXaXXXY +Xf= f= 7XtXR R   mXn.Y.[.[.[.[.OX*X*X8X5X*X=X,.u vXvX; > > MXMX, 7 t t   ",
-"  nXnXnXbXzXvX-.Y +XcX6 6= == d L B.G H `.X.:.7.m.=X=X=X=X=X6X,.u cXvXNX: BX> MXVXCXVX7 7 7   ",
-"  ZXZXnXbXAXgX@.+XvX; - - - - * @XR.>.sX>.R.i 0 x eXeXeXeXO hXaXcXvXNX: BXMXMXMXVXCXCXCXVX7 7   ",
-"  SXZXZXAXgXN.aXNX: : NXNXNX- * +X+X* 6 6 6 * * * * * * * vXvX- NX: DXBXMXMXFXCXCXCXCXGXVXVX7   ",
-"  SXSXHXgX0.JXKXLXKXKXDX: : NX* @X-X- - - - - - - - - - - NX: DXDXDXMXMXFXFXCXCXCXCXGXGXGXVXVX  ",
-"  SXHXPX3.JXnXnXnXnXbXLXKXKXNXaX-XvX: : NX: : : : : : : BXDXDXLXMXMXFXFXCXCXCXCXGXGXGXGXGXGXGX  ",
-"  IXUX$.AXZXZXZXZXnXnXnXLXLXNXJXvXBXDXBXBXBXBXDXDXDXDXLXDXLXLXFXFXFXFXCXCXCXCXGXGXGXGXGXGXGXGX  ",
-"                                                                                                "};
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_window_16.gif b/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_window_16.gif
deleted file mode 100644
index 05626b1..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_window_16.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_window_32.gif b/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_window_32.gif
deleted file mode 100644
index b432f88..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/icons/alt_window_32.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/org.eclipse.statet.rj.servi.rcpdemo.product b/examples/org.eclipse.statet.rj.servi.rcpdemo2/org.eclipse.statet.rj.servi.rcpdemo.product
deleted file mode 100644
index 836d481..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/org.eclipse.statet.rj.servi.rcpdemo.product
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?pde version="3.5"?>
-
-<product name="RServi RCP Demo" id="org.eclipse.statet.rj.servi.rcpdemo2.product" application="org.eclipse.statet.rj.servi.rcpdemo.application" version="0.4.0.qualifier" useFeatures="false" includeLaunchers="true">
-
-   <configIni use="default">
-   </configIni>
-
-   <launcherArgs>
-      <vmArgs>-Xms40m -Xmx512m
-      </vmArgs>
-      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
-      </vmArgsMac>
-   </launcherArgs>
-
-   <windowImages i16="icons/alt_window_16.gif" i32="icons/alt_window_32.gif"/>
-
-   <splash
-      location="org.eclipse.statet.rj.servi.rcpdemo2"
-      startupProgressRect="20,190,415,15"
-      startupMessageRect="20,210,415,20"
-      startupForegroundColor="000000" />
-   <launcher>
-      <solaris/>
-      <win useIco="false">
-         <bmp/>
-      </win>
-   </launcher>
-
-   <vm>
-   </vm>
-
-   <plugins>
-      <plugin id="com.ibm.icu"/>
-      <plugin id="org.eclipse.statet.ecommons.runtime.core"/>
-      <plugin id="org.eclipse.statet.ecommons.rmi.core"/>
-      <plugin id="org.eclipse.statet.ecommons.coremisc"/>
-      <plugin id="org.eclipse.statet.ecommons.uimisc"/>
-      <plugin id="org.eclipse.statet.rj.data"/>
-      <plugin id="org.eclipse.statet.rj.client"/>
-      <plugin id="org.eclipse.statet.rj.services.core"/>
-      <plugin id="org.eclipse.statet.rj.eclient.core"/>
-      <plugin id="org.eclipse.statet.rj.eclient.graphics"/>
-      <plugin id="org.eclipse.statet.rj.server"/>
-      <plugin id="org.eclipse.statet.rj.servi"/>
-      <plugin id="org.eclipse.statet.rj.servi.rcpdemo2"/>
-      <plugin id="javax.annotation"/>
-      <plugin id="javax.inject"/>
-      <plugin id="javax.xml"/>
-      <plugin id="org.apache.batik.css"/>
-      <plugin id="org.apache.batik.util"/>
-      <plugin id="org.apache.batik.util.gui"/>
-      <plugin id="org.apache.commons.jxpath"/>
-      <plugin id="org.eclipse.core.commands"/>
-      <plugin id="org.eclipse.core.contenttype"/>
-      <plugin id="org.eclipse.core.databinding"/>
-      <plugin id="org.eclipse.core.databinding.observable"/>
-      <plugin id="org.eclipse.core.databinding.property"/>
-      <plugin id="org.eclipse.core.expressions"/>
-      <plugin id="org.eclipse.core.jobs"/>
-      <plugin id="org.eclipse.core.runtime"/>
-      <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>
-      <plugin id="org.eclipse.e4.core.commands"/>
-      <plugin id="org.eclipse.e4.core.contexts"/>
-      <plugin id="org.eclipse.e4.core.di"/>
-      <plugin id="org.eclipse.e4.core.di.annotations"/>
-      <plugin id="org.eclipse.e4.core.di.extensions"/>
-      <plugin id="org.eclipse.e4.core.services"/>
-      <plugin id="org.eclipse.e4.emf.xpath"/>
-      <plugin id="org.eclipse.e4.ui.bindings"/>
-      <plugin id="org.eclipse.e4.ui.css.core"/>
-      <plugin id="org.eclipse.e4.ui.css.swt"/>
-      <plugin id="org.eclipse.e4.ui.css.swt.theme"/>
-      <plugin id="org.eclipse.e4.ui.di"/>
-      <plugin id="org.eclipse.e4.ui.model.workbench"/>
-      <plugin id="org.eclipse.e4.ui.services"/>
-      <plugin id="org.eclipse.e4.ui.widgets"/>
-      <plugin id="org.eclipse.e4.ui.workbench"/>
-      <plugin id="org.eclipse.e4.ui.workbench.addons.swt"/>
-      <plugin id="org.eclipse.e4.ui.workbench.renderers.swt"/>
-      <plugin id="org.eclipse.e4.ui.workbench.swt"/>
-      <plugin id="org.eclipse.e4.ui.workbench3"/>
-      <plugin id="org.eclipse.emf.common"/>
-      <plugin id="org.eclipse.emf.ecore"/>
-      <plugin id="org.eclipse.emf.ecore.change"/>
-      <plugin id="org.eclipse.emf.ecore.xmi"/>
-      <plugin id="org.eclipse.equinox.app"/>
-      <plugin id="org.eclipse.equinox.common"/>
-      <plugin id="org.eclipse.equinox.ds"/>
-      <plugin id="org.eclipse.equinox.event"/>
-      <plugin id="org.eclipse.equinox.preferences"/>
-      <plugin id="org.eclipse.equinox.registry"/>
-      <plugin id="org.eclipse.equinox.util"/>
-      <plugin id="org.eclipse.help"/>
-      <plugin id="org.eclipse.jface"/>
-      <plugin id="org.eclipse.jface.databinding"/>
-      <plugin id="org.eclipse.osgi"/>
-      <plugin id="org.eclipse.osgi.compatibility.state" fragment="true"/>
-      <plugin id="org.eclipse.osgi.services"/>
-      <plugin id="org.eclipse.swt"/>
-      <plugin id="org.eclipse.swt.cocoa.macosx" fragment="true"/>
-      <plugin id="org.eclipse.swt.cocoa.macosx.x86_64" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.aix.ppc" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.aix.ppc64" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.hpux.ia64_32" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.linux.ppc64" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.linux.s390" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.linux.s390x" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.linux.x86" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.linux.x86_64" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.solaris.sparc" fragment="true"/>
-      <plugin id="org.eclipse.swt.gtk.solaris.x86" fragment="true"/>
-      <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/>
-      <plugin id="org.eclipse.swt.win32.win32.x86_64" fragment="true"/>
-      <plugin id="org.eclipse.ui"/>
-      <plugin id="org.eclipse.ui.workbench"/>
-      <plugin id="org.w3c.css.sac"/>
-      <plugin id="org.w3c.dom.events"/>
-      <plugin id="org.w3c.dom.smil"/>
-      <plugin id="org.w3c.dom.svg"/>
-   </plugins>
-
-   <configurations>
-      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
-      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
-      <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="1" />
-      <plugin id="org.eclipse.osgi" autoStart="true" startLevel="-1" />
-   </configurations>
-
-</product>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/plugin.xml b/examples/org.eclipse.statet.rj.servi.rcpdemo2/plugin.xml
deleted file mode 100644
index c002914..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/plugin.xml
+++ /dev/null
@@ -1,127 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.4"?>
-<plugin>
-
-   <extension
-         id="org.eclipse.statet.rj.servi.rcpdemo.application"
-         point="org.eclipse.core.runtime.applications">
-      <application>
-         <run
-               class="org.eclipse.statet.internal.rj.servi.rcpdemo.Application">
-         </run>
-      </application>
-   </extension>
-   <extension
-         id="product"
-         point="org.eclipse.core.runtime.products">
-      <product
-            application="org.eclipse.statet.rj.servi.rcpdemo.application"
-            name="RServi RCP Demo">
-         <property
-               name="windowImages"
-               value="icons/alt_window_16.gif,icons/alt_window_32.gif">
-         </property>
-         <property
-               name="appName"
-               value="RServi RCP Demo">
-         </property>
-         <property
-               name="startupProgressRect"
-               value="20,190,415,15">
-         </property>
-         <property
-               name="startupForegroundColor"
-               value="000000">
-         </property>
-         <property
-               name="startupMessageRect"
-               value="20,210,415,20">
-         </property>
-         <property
-               name="preferenceCustomization"
-               value="plugin_customization.ini">
-         </property>
-      </product>
-   </extension>
-   
-   <extension
-         point="org.eclipse.ui.perspectives">
-      <perspective
-            name="RCP Perspective"
-            class="org.eclipse.statet.internal.rj.servi.rcpdemo.Perspective"
-            id="org.eclipse.statet.rj.servi.rcpdemo.perspective">
-      </perspective>
-   </extension>
-   <extension
-         point="org.eclipse.ui.menus">
-      <menuContribution
-            locationURI="menu:org.eclipse.ui.main.menu">
-         <menu id="file"
-               label="&amp;File">
-         </menu>
-      </menuContribution>
-      <menuContribution
-            locationURI="menu:file">
-         <command
-               commandId="org.eclipse.ui.file.exit"
-               style="push">
-         </command>
-      </menuContribution>
-   </extension>
-   
-   <extension
-         point="org.eclipse.ui.views">
-      <view
-            allowMultiple="false"
-            class="org.eclipse.statet.internal.rj.servi.rcpdemo.views.RServiConfigView"
-            id="org.eclipse.statet.rj.servi.rcpdemo.views.RServiConfig"
-            name="Config"
-            restorable="true">
-      </view>
-      <view
-            allowMultiple="true"
-            class="org.eclipse.statet.internal.rj.servi.rcpdemo.views.GraphDemoView"
-            id="org.eclipse.statet.rj.servi.rcpdemo.views.GraphDemo"
-            name="Graph"
-            restorable="true">
-      </view>
-      <view
-            id="org.eclipse.ui.views.ProgressView"
-            class="org.eclipse.ui.ExtensionFactory:progressView"
-            name="Progress">
-      </view>
-   </extension>
-   <extension
-         point="org.eclipse.ui.perspectiveExtensions">
-      <perspectiveExtension
-            targetID="*">
-         <view
-               id="org.eclipse.statet.rj.servi.rcpdemo.views.GraphDemo"
-               closeable="false"
-               minimized="false"
-               relative="org.eclipse.ui.editorss"
-               relationship="left"
-               visible="true">
-         </view>
-         <view
-               id="org.eclipse.statet.rj.servi.rcpdemo.views.RServiConfig"
-               closeable="false"
-               minimized="false"
-               ratio="0.3f"
-               relative="org.eclipse.statet.rj.servi.rcpdemo.views.GraphDemo"
-               relationship="left"
-               visible="true">
-         </view>
-         <view
-               id="org.eclipse.ui.views.ProgressView"
-               closeable="true"
-               minimized="false"
-               ratio="0.75"
-               relative="org.eclipse.statet.rj.servi.rcpdemo.views.RServiConfig"
-               relationship="bottom"
-               visible="false">
-         </view>
-      </perspectiveExtension>
-   </extension>
-
-</plugin>
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Application.java b/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Application.java
deleted file mode 100644
index 8be7702..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Application.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*=============================================================================#
- # Copyright (c) 2009, 2018 Stephan Wahlbrink and others.
- # 
- # This program and the accompanying materials are made available under the
- # terms of the Eclipse Public License 2.0 which is available at
- # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
- # which is available at https://www.apache.org/licenses/LICENSE-2.0.
- # 
- # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
- # 
- # Contributors:
- #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
- #=============================================================================*/
-
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
-
-import org.eclipse.equinox.app.IApplication;
-import org.eclipse.equinox.app.IApplicationContext;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.PlatformUI;
-
-
-/**
- * This class controls all aspects of the application's execution
- */
-public class Application implements IApplication {
-	
-	
-	public Application() {
-	}
-	
-	
-	@Override
-	public Object start(final IApplicationContext context) throws Exception {
-		final Display display= PlatformUI.createDisplay();
-		try {
-			final int returnCode= PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
-			if (returnCode == PlatformUI.RETURN_RESTART) {
-				return IApplication.EXIT_RESTART;
-			} else {
-				return IApplication.EXIT_OK;
-			}
-		}
-		finally {
-			display.dispose();
-		}
-	}
-	
-	@Override
-	public void stop() {
-		final IWorkbench workbench= PlatformUI.getWorkbench();
-		if (workbench == null) {
-			return;
-		}
-		final Display display= workbench.getDisplay();
-		display.syncExec(new Runnable() {
-			@Override
-			public void run() {
-				if (!display.isDisposed()) {
-					workbench.close();
-				}
-			}
-		});
-	}
-	
-}
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationActionBarAdvisor.java b/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationActionBarAdvisor.java
deleted file mode 100644
index cbc5939..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationActionBarAdvisor.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*=============================================================================#
- # Copyright (c) 2009, 2018 Stephan Wahlbrink and others.
- # 
- # This program and the accompanying materials are made available under the
- # terms of the Eclipse Public License 2.0 which is available at
- # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
- # which is available at https://www.apache.org/licenses/LICENSE-2.0.
- # 
- # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
- # 
- # Contributors:
- #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
- #=============================================================================*/
-
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
-
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-
-
-public class ApplicationActionBarAdvisor extends ActionBarAdvisor {
-	
-	
-	public ApplicationActionBarAdvisor(final IActionBarConfigurer configurer) {
-		super(configurer);
-	}
-	
-	
-	@Override
-	protected void makeActions(final IWorkbenchWindow window) {
-	}
-	
-}
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchAdvisor.java b/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchAdvisor.java
deleted file mode 100644
index f17accb..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchAdvisor.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*=============================================================================#
- # Copyright (c) 2009, 2018 Stephan Wahlbrink and others.
- # 
- # This program and the accompanying materials are made available under the
- # terms of the Eclipse Public License 2.0 which is available at
- # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
- # which is available at https://www.apache.org/licenses/LICENSE-2.0.
- # 
- # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
- # 
- # Contributors:
- #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
- #=============================================================================*/
-
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
-
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchAdvisor;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor {
-	
-	private static final String PERSPECTIVE_ID= "org.eclipse.statet.rj.servi.rcpdemo.perspective";
-	
-	
-	@Override
-	public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(final IWorkbenchWindowConfigurer configurer) {
-		return new ApplicationWorkbenchWindowAdvisor(configurer);
-	}
-	
-	@Override
-	public String getInitialWindowPerspectiveId() {
-		return PERSPECTIVE_ID;
-	}
-	
-}
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchWindowAdvisor.java b/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
deleted file mode 100644
index c078895..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/ApplicationWorkbenchWindowAdvisor.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*=============================================================================#
- # Copyright (c) 2009, 2018 Stephan Wahlbrink and others.
- # 
- # This program and the accompanying materials are made available under the
- # terms of the Eclipse Public License 2.0 which is available at
- # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
- # which is available at https://www.apache.org/licenses/LICENSE-2.0.
- # 
- # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
- # 
- # Contributors:
- #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
- #=============================================================================*/
-
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
-
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-
-public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor {
-	
-	
-	public ApplicationWorkbenchWindowAdvisor(final IWorkbenchWindowConfigurer configurer) {
-		super(configurer);
-	}
-	
-	
-	@Override
-	public ActionBarAdvisor createActionBarAdvisor(final IActionBarConfigurer configurer) {
-		return new ApplicationActionBarAdvisor(configurer);
-	}
-	
-	@Override
-	public void preWindowOpen() {
-		final IWorkbenchWindowConfigurer configurer= getWindowConfigurer();
-		configurer.setInitialSize(new Point(760, 600));
-		configurer.setShowCoolBar(false);
-		configurer.setShowStatusLine(true);
-		configurer.setShowProgressIndicator(true);
-	}
-	
-}
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Perspective.java b/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Perspective.java
deleted file mode 100644
index 5e1ecd3..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/Perspective.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*=============================================================================#
- # Copyright (c) 2009, 2018 Stephan Wahlbrink and others.
- # 
- # This program and the accompanying materials are made available under the
- # terms of the Eclipse Public License 2.0 which is available at
- # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
- # which is available at https://www.apache.org/licenses/LICENSE-2.0.
- # 
- # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
- # 
- # Contributors:
- #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
- #=============================================================================*/
-
-package org.eclipse.statet.internal.rj.servi.rcpdemo;
-
-import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.IPerspectiveFactory;
-
-
-public class Perspective implements IPerspectiveFactory {
-	
-	
-	public Perspective() {
-	}
-	
-	
-	@Override
-	public void createInitialLayout(final IPageLayout layout) {
-		layout.setEditorAreaVisible(false);
-	}
-	
-}
diff --git a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/RServiConfigView.java b/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/RServiConfigView.java
deleted file mode 100644
index fa7e373..0000000
--- a/examples/org.eclipse.statet.rj.servi.rcpdemo2/src/org/eclipse/statet/internal/rj/servi/rcpdemo/views/RServiConfigView.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*=============================================================================#
- # Copyright (c) 2009, 2018 Stephan Wahlbrink and others.
- # 
- # This program and the accompanying materials are made available under the
- # terms of the Eclipse Public License 2.0 which is available at
- # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
- # which is available at https://www.apache.org/licenses/LICENSE-2.0.
- # 
- # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
- # 
- # Contributors:
- #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
- #=============================================================================*/
-
-package org.eclipse.statet.internal.rj.servi.rcpdemo.views;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.DirectoryDialog;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.part.ViewPart;
-import org.eclipse.ui.statushandlers.StatusManager;
-
-import org.eclipse.statet.internal.rj.servi.rcpdemo.Activator;
-import org.eclipse.statet.rj.servi.rcpdemo.RServiManager;
-
-
-public class RServiConfigView extends ViewPart {
-	
-	
-	public static final String VIEW_ID= "org.eclipse.statet.rj.servi.rcpdemo.views.RServiConfig";
-	
-	
-	private Button remoteSelectControl;
-	private Text remoteAddressControl;
-	private Button localSelectControl;
-	private Text localRhomeControl;
-	private Button rsetupSelectControl;
-	private Text rsetupIdControl;
-	
-	
-	public RServiConfigView() {
-	}
-	
-	
-	@Override
-	public void createPartControl(final Composite parent) {
-		final Composite composite= new Composite(parent, SWT.NONE);
-		composite.setLayout(new GridLayout());
-		
-		this.remoteSelectControl= new Button(composite, SWT.RADIO);
-		this.remoteSelectControl.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
-		this.remoteSelectControl.setText("Remote/Pool - RMI pool address:");
-		
-		{	this.remoteAddressControl= new Text(composite, SWT.BORDER);
-			final GridData gd= new GridData(SWT.FILL, SWT.CENTER, true, false);
-			gd.horizontalIndent= 10; 
-			this.remoteAddressControl.setLayoutData(gd);
-		}
-		
-		this.localSelectControl= new Button(composite, SWT.RADIO);
-		this.localSelectControl.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
-		this.localSelectControl.setText("Local - R_HOME:");
-		
-		{	this.localRhomeControl= new Text(composite, SWT.BORDER);
-			final GridData gd= new GridData(SWT.FILL, SWT.CENTER, true, false);
-			gd.horizontalIndent= 10; 
-			this.localRhomeControl.setLayoutData(gd);
-		}
-		
-		{	final Button button= new Button(composite, SWT.PUSH);
-			button.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
-			button.setText("Select...");
-			button.addSelectionListener(new SelectionAdapter() {
-				@Override
-				public void widgetSelected(final SelectionEvent e) {
-					final DirectoryDialog dialog= new DirectoryDialog(button.getShell());
-					dialog.setMessage("Select R_HOME directory:");
-					final String path= dialog.open();
-					if (path != null) {
-						RServiConfigView.this.localRhomeControl.setText(path);
-					}
-				}
-			});
-		}
-		
-		this.rsetupSelectControl= new Button(composite, SWT.RADIO);
-		this.rsetupSelectControl.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
-		this.rsetupSelectControl.setText("Supplied R Setup - Id:");
-		
-		{	this.rsetupIdControl= new Text(composite, SWT.BORDER);
-			final GridData gd= new GridData(SWT.FILL, SWT.CENTER, true, false);
-			gd.horizontalIndent= 10; 
-			this.rsetupIdControl.setLayoutData(gd);
-		}
-		
-		final Label label= new Label(composite, SWT.NONE);
-		label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
-		
-		final Button applyControl= new Button(composite, SWT.PUSH);
-		applyControl.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
-		applyControl.setText("Apply");
-		applyControl.addSelectionListener(new SelectionAdapter() {
-			@Override
-			public void widgetSelected(final SelectionEvent e) {
-				applyConfig();
-			}
-		});
-		
-		this.remoteSelectControl.setSelection(true);
-		this.remoteAddressControl.setText("rmi://localhost/rservi-pool");
-		final String rhome= System.getenv("R_HOME");
-		this.localRhomeControl.setText((rhome != null) ? rhome : "");
-		this.rsetupIdControl.setText("org.rproject.r.DefaultSetup");
-	}
-	
-	@Override
-	public void setFocus() {
-	}
-	
-	private void applyConfig() {
-		try {
-			final RServiManager manager= Activator.getInstance().getRServiManager();
-			if (this.remoteSelectControl.getSelection()) {
-				manager.setPool(this.remoteAddressControl.getText());
-				return;
-			}
-			if (this.localSelectControl.getSelection()) {
-				manager.setLocalInst(this.localRhomeControl.getText());
-				return;
-			}
-			if (this.rsetupSelectControl.getSelection()) {
-				manager.setRSetup(this.rsetupIdControl.getText());
-				return;
-			}
-		}
-		catch (final CoreException e) {
-			StatusManager.getManager().handle(new Status(IStatus.ERROR, Activator.BUNDLE_ID,
-					"Could not apply RServi configuration.", e),
-					StatusManager.SHOW | StatusManager.LOG);
-		}
-		return;
-	}
-	
-}
diff --git a/servi/org.eclipse.statet.rj.servi/META-INF/MANIFEST.MF b/servi/org.eclipse.statet.rj.servi/META-INF/MANIFEST.MF
index d92277c..069681f 100644
--- a/servi/org.eclipse.statet.rj.servi/META-INF/MANIFEST.MF
+++ b/servi/org.eclipse.statet.rj.servi/META-INF/MANIFEST.MF
@@ -11,10 +11,10 @@
  org.eclipse.statet.rj.services.core;bundle-version="[3.0.0,3.1.0)";visibility:=reexport,
  org.eclipse.statet.rj.client;bundle-version="[3.0.0,3.1.0)",
  org.eclipse.statet.ecommons.runtime.core;bundle-version="4.0.0",
- org.eclipse.statet.ecommons.rmi.core;bundle-version="4.0.0",
- org.apache.commons.pool
+ org.eclipse.statet.ecommons.rmi.core;bundle-version="4.0.0"
 Import-Package: org.eclipse.statet.jcommons.collections;version="4.0.0",
- org.eclipse.statet.jcommons.lang;version="4.0.0"
+ org.eclipse.statet.jcommons.lang;version="4.0.0",
+ org.apache.commons.pool2;bundle-version="[2.4.0,3.0.0)";resolution:=optional
 Export-Package: org.eclipse.statet.internal.rj.servi;x-friends:="org.eclipse.statet.rj.tests",
  org.eclipse.statet.rj.servi;version="3.0.0",
  org.eclipse.statet.rj.servi.node,
