diff --git a/de.bmotionstudio.gef.editor/plugin.xml b/de.bmotionstudio.gef.editor/plugin.xml
index 3a5e5027a79b707f8aef77b52a444de76b203556..f7e7118ba7f96773030a3b4f474eceb4995ecdc6 100644
--- a/de.bmotionstudio.gef.editor/plugin.xml
+++ b/de.bmotionstudio.gef.editor/plugin.xml
@@ -120,7 +120,7 @@
    <extension
          point="org.eclipse.ui.commands">
       <command
-            defaultHandler="de.bmotionstudio.gef.editor.internal.OpenWebsiteHandler"
+            defaultHandler="de.bmotionstudio.gef.editor.handler.OpenWebsiteHandler"
             id="de.bmotionstudio.gef.editor.command.openBMotionStudioWebsite"
             name="Open website">
       </command>
@@ -129,7 +129,7 @@
             name="Start Visualization from Editor">
       </command>
       <command
-            defaultHandler="de.bmotionstudio.gef.editor.internal.StartVisualizationFileHandler"
+            defaultHandler="de.bmotionstudio.gef.editor.handler.StartVisualizationFileHandler"
             id="de.bmotionstudio.command.startVisualizationFromFile"
             name="Start Visualization from File">
       </command>
@@ -137,7 +137,7 @@
    <extension
          point="org.eclipse.ui.handlers">
       <handler
-            class="de.bmotionstudio.gef.editor.internal.StartVisualizationEditorHandler"
+            class="de.bmotionstudio.gef.editor.handler.StartVisualizationEditorHandler"
             commandId="de.bmotionstudio.command.startVisualizationFromEditor">
          <enabledWhen>
             <with
@@ -166,6 +166,9 @@
       <registerImages
             class="de.bmotionstudio.gef.editor.EditorImageRegistry">
       </registerImages>
+      <registerImages
+            class="de.bmotionstudio.gef.editor.ImageRegistry">
+      </registerImages>
    </extension>
    
  <extension
@@ -179,142 +182,142 @@
             icon="icons/eclipse16/image_obj.gif"
             id="de.bmotionstudio.gef.editor.image"
             name="Image"
-            service="de.bmotionstudio.gef.editor.service.BImageService">
+            service="de.bmotionstudio.gef.editor.model.service.BImageService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/icon_button.gif"
             id="de.bmotionstudio.gef.editor.button"
             name="Button"
-            service="de.bmotionstudio.gef.editor.service.BButtonService">
+            service="de.bmotionstudio.gef.editor.model.service.BButtonService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/icon_radiobutton_c.gif"
             id="de.bmotionstudio.gef.editor.radiobutton"
             name="Radiobutton"
-            service="de.bmotionstudio.gef.editor.service.BRadioButtonService">
+            service="de.bmotionstudio.gef.editor.model.service.BRadioButtonService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/icon_checked.gif"
             id="de.bmotionstudio.gef.editor.checkbox"
             name="Checkbox"
-            service="de.bmotionstudio.gef.editor.service.BCheckboxService">
+            service="de.bmotionstudio.gef.editor.model.service.BCheckboxService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/eclipse16/overview_obj.gif"
             id="de.bmotionstudio.gef.editor.composite"
             name="Composite"
-            service="de.bmotionstudio.gef.editor.service.BCompositeService">
+            service="de.bmotionstudio.gef.editor.model.service.BCompositeService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/icon_text.gif"
             id="de.bmotionstudio.gef.editor.text"
             name="Text"
-            service="de.bmotionstudio.gef.editor.service.BTextService">
+            service="de.bmotionstudio.gef.editor.model.service.BTextService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/icon_textfield.gif"
             id="de.bmotionstudio.gef.editor.textfield"
             name="Textfield"
-            service="de.bmotionstudio.gef.editor.service.BTextfieldService">
+            service="de.bmotionstudio.gef.editor.model.service.BTextfieldService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/icon_rectangle.gif"
             id="de.bmotionstudio.gef.editor.rectangle"
             name="Rectanlge"
-            service="de.bmotionstudio.gef.editor.service.BRectangleService">
+            service="de.bmotionstudio.gef.editor.model.service.BRectangleService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/icon_ellipse.gif"
             id="de.bmotionstudio.gef.editor.ellipse"
             name="Ellipse"
-            service="de.bmotionstudio.gef.editor.service.BEllipseService">
+            service="de.bmotionstudio.gef.editor.model.service.BEllipseService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/icon_connection16.gif"
             id="de.bmotionstudio.gef.editor.connection"
             name="Connection"
-            service="de.bmotionstudio.gef.editor.service.BConnectionService">
+            service="de.bmotionstudio.gef.editor.model.service.BConnectionService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/eclipse16/prop_ps.gif"
             id="de.bmotionstudio.gef.editor.table"
             name="Table"
-            service="de.bmotionstudio.gef.editor.service.BTableService">
+            service="de.bmotionstudio.gef.editor.model.service.BTableService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/eclipse16/prop_ps2.gif"
             id="de.bmotionstudio.gef.editor.tablecolumn"
             name="Column"
-            service="de.bmotionstudio.gef.editor.service.BTableColumnService">
+            service="de.bmotionstudio.gef.editor.model.service.BTableColumnService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.group.main"
             icon="icons/eclipse16/prop_ps3.gif"
             id="de.bmotionstudio.gef.editor.tablecell"
             name="Cell"
-            service="de.bmotionstudio.gef.editor.service.BTableCellService">
+            service="de.bmotionstudio.gef.editor.model.service.BTableCellService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.railway.group"
             icon="icons/icon_signal.gif"
             id="de.bmotionstudio.gef.editor.signal"
             name="Signal"
-            service="de.bmotionstudio.gef.editor.service.SignalService">
+            service="de.bmotionstudio.gef.editor.model.service.SignalService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.railway.group"
             icon="icons/eclipse16/smartmode_co.gif"
             id="de.bmotionstudio.gef.editor.light"
             name="Light"
-            service="de.bmotionstudio.gef.editor.service.LightService">
+            service="de.bmotionstudio.gef.editor.model.service.LightService">
       </control>
+      <group
+            id="de.bmotionstudio.gef.editor.industry.group"
+            name="Industry">
+      </group>
       <control
             groupid="de.bmotionstudio.gef.editor.industry.group"
             icon="icons/icon_tank.gif"
             id="de.bmotionstudio.gef.editor.tank"
             name="Tank"
-            service="de.bmotionstudio.gef.editor.service.TankService">
+            service="de.bmotionstudio.gef.editor.model.service.TankService">
       </control>
+      <group
+            id="de.bmotionstudio.gef.editor.railway.group"
+            name="Railway">
+      </group>
       <control
             groupid="de.bmotionstudio.gef.editor.railway.group"
             icon="icons/icon_tracknode.gif"
             id="de.bmotionstudio.gef.editor.tracknode"
             name="Node"
-            service="de.bmotionstudio.gef.editor.service.TrackNodeService">
+            service="de.bmotionstudio.gef.editor.model.service.TrackNodeService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.railway.group"
             icon="icons/icon_track.gif"
             id="de.bmotionstudio.gef.editor.track"
             name="Trac"
-            service="de.bmotionstudio.gef.editor.service.TrackService">
+            service="de.bmotionstudio.gef.editor.model.service.TrackService">
       </control>
       <control
             groupid="de.bmotionstudio.gef.editor.railway.group"
             icon="icons/icon_switch.gif"
             id="de.bmotionstudio.gef.editor.switch"
             name="Switch"
-            service="de.bmotionstudio.gef.editor.service.SwitchService">
+            service="de.bmotionstudio.gef.editor.model.service.SwitchService">
       </control>
-      <group
-            id="de.bmotionstudio.gef.editor.railway.group"
-            name="Railway">
-      </group>
-      <group
-            id="de.bmotionstudio.gef.editor.industry.group"
-            name="Industry">
-      </group>
    </extension>
    <extension
          point="de.bmotionstudio.gef.editor.observer">
@@ -388,12 +391,6 @@
             class="de.bmotionstudio.gef.editor.InstallMenu">
       </menu>
    </extension>
-   <extension
-         point="de.bmotionstudio.gef.editor.registerImages">
-      <registerImages
-            class="de.bmotionstudio.gef.editor.ImageRegistry">
-      </registerImages>
-   </extension>
    <extension
          point="de.bmotionstudio.gef.editor.language">
       <language
diff --git a/de.bmotionstudio.gef.editor/schema/de.bmotionstudio.gef.editor.control.exsd b/de.bmotionstudio.gef.editor/schema/de.bmotionstudio.gef.editor.control.exsd
index ce1f1677784cea86330b89864ecc79fc0eab3f6a..e35e7098e4b05024689df59e940cd48a108b2e91 100644
--- a/de.bmotionstudio.gef.editor/schema/de.bmotionstudio.gef.editor.control.exsd
+++ b/de.bmotionstudio.gef.editor/schema/de.bmotionstudio.gef.editor.control.exsd
@@ -18,7 +18,6 @@
       </annotation>
       <complexType>
          <sequence minOccurs="0" maxOccurs="unbounded">
-            <element ref="control" minOccurs="0" maxOccurs="1"/>
             <element ref="group" minOccurs="0" maxOccurs="1"/>
             <element ref="control" minOccurs="0" maxOccurs="1"/>
          </sequence>
@@ -75,9 +74,6 @@
          </appInfo>
       </annotation>
       <complexType>
-         <sequence>
-            <element ref="attributes" minOccurs="0" maxOccurs="1"/>
-         </sequence>
          <attribute name="id" type="string" use="required">
             <annotation>
                <documentation>
@@ -122,94 +118,30 @@
       </complexType>
    </element>
 
-   <element name="attribute-string">
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The id of the referenced attribute. Since the same attribute could be assigned to different controls the corresponding attibute is defined in a seperate exention point (de.bmotionstudio.gef.editor.attribute).
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="default-value" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The default value of this attribute for this control
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="editable" type="boolean" use="default" value="true">
-            <annotation>
-               <documentation>
-                  Boolean value - Option to decide whenever this attribute should be editable or not.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="show" type="boolean" use="default" value="true">
-            <annotation>
-               <documentation>
-                  Boolean value - Option to decide whenever this attribute should be displayed in the properties view.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="attribute-java">
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="default-value" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java" basedOn=":de.bmotionstudio.core.IGetDefaultValue"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="attributes">
-      <complexType>
-         <sequence>
-            <element ref="attribute-java" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="attribute-string" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-      </complexType>
-   </element>
-
    <annotation>
       <appInfo>
-         <meta.section type="since"/>
+         <meta.section type="apiInfo"/>
       </appInfo>
       <documentation>
-         [Enter the first release in which this extension point appears.]
+         [Enter API information here.]
       </documentation>
    </annotation>
 
    <annotation>
       <appInfo>
-         <meta.section type="examples"/>
+         <meta.section type="since"/>
       </appInfo>
       <documentation>
-         [Enter extension point usage example here.]
+         [Enter the first release in which this extension point appears.]
       </documentation>
    </annotation>
 
    <annotation>
       <appInfo>
-         <meta.section type="apiInfo"/>
+         <meta.section type="examples"/>
       </appInfo>
       <documentation>
-         [Enter API information here.]
+         [Enter extension point usage example here.]
       </documentation>
    </annotation>
 
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/internal/OpenWebsiteHandler.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/handler/OpenWebsiteHandler.java
similarity index 93%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/internal/OpenWebsiteHandler.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/handler/OpenWebsiteHandler.java
index 500bb85d61ccf97fc90b8f6c132b8544f481fe34..9122b15e222de30d845fada8f4a41b35e265b4c1 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/internal/OpenWebsiteHandler.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/handler/OpenWebsiteHandler.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.internal;
+package de.bmotionstudio.gef.editor.handler;
 
 import java.net.MalformedURLException;
 import java.net.URL;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/internal/StartVisualizationEditorHandler.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/handler/StartVisualizationEditorHandler.java
similarity index 92%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/internal/StartVisualizationEditorHandler.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/handler/StartVisualizationEditorHandler.java
index bda5ba1df2ffa63f35d858a5a86fc205ea6372ba..ebd89b02a01f24f608dc4c9c07d78650519e767e 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/internal/StartVisualizationEditorHandler.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/handler/StartVisualizationEditorHandler.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.internal;
+package de.bmotionstudio.gef.editor.handler;
 
 import org.eclipse.core.commands.AbstractHandler;
 import org.eclipse.core.commands.ExecutionEvent;
@@ -19,6 +19,7 @@ import org.eclipse.ui.PlatformUI;
 import org.eclipse.ui.WorkbenchException;
 
 import de.bmotionstudio.gef.editor.BMotionEditorPlugin;
+import de.bmotionstudio.gef.editor.internal.VisualizationProgressBar;
 import de.prob.core.Animator;
 import de.prob.logging.Logger;
 
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/internal/StartVisualizationFileHandler.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/handler/StartVisualizationFileHandler.java
similarity index 94%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/internal/StartVisualizationFileHandler.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/handler/StartVisualizationFileHandler.java
index 2c9964a279dd5b4c08b830489ae060de8d64c7bf..945993e514a2dfa94a453379a0aa7c8fb502b4e9 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/internal/StartVisualizationFileHandler.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/handler/StartVisualizationFileHandler.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.internal;
+package de.bmotionstudio.gef.editor.handler;
 
 import org.eclipse.core.commands.AbstractHandler;
 import org.eclipse.core.commands.ExecutionEvent;
@@ -30,6 +30,7 @@ import org.eclipse.ui.part.FileEditorInput;
 
 import de.bmotionstudio.gef.editor.BMotionEditorPlugin;
 import de.bmotionstudio.gef.editor.BMotionStudioEditor;
+import de.bmotionstudio.gef.editor.internal.VisualizationProgressBar;
 import de.prob.core.Animator;
 import de.prob.logging.Logger;
 
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BButtonService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BButtonService.java
similarity index 92%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BButtonService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BButtonService.java
index e0b5b38b09a6429c1c2a66bdc71929c3d3a8abcd..e725497872ea5284faf8035fa7dbebc3e6fe1c9b 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BButtonService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BButtonService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BCheckboxService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BCheckboxService.java
similarity index 92%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BCheckboxService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BCheckboxService.java
index dcaebcef01eac35993dd90a28542946e5bb9325e..116a6e6c81832d075d3d575040cf20adacd089ac 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BCheckboxService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BCheckboxService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BCompositeService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BCompositeService.java
similarity index 92%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BCompositeService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BCompositeService.java
index 4a11b1d1c33fbcdecb4d0a06c05ca1115270a412..c9a899bdcece83f8b6b12b1085bb1c351ce5d569 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BCompositeService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BCompositeService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BConnectionService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BConnectionService.java
similarity index 94%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BConnectionService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BConnectionService.java
index 8c2c8e97317f5a65067764c37f9c72ec8b9e4cda..54fcc6bfa0ff7cfea37295e007e6c174a0f91590 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BConnectionService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BConnectionService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import org.eclipse.core.runtime.IConfigurationElement;
 import org.eclipse.gef.palette.ConnectionCreationToolEntry;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BEllipseService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BEllipseService.java
similarity index 95%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BEllipseService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BEllipseService.java
index ffaf7f7dceeebc27954799e4b6fbf7961a9171ee..12131e63d3fbaf0556d32ad804436a570d70232a 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BEllipseService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BEllipseService.java
@@ -1,4 +1,4 @@
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.AttributeConstants;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BImageService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BImageService.java
similarity index 92%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BImageService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BImageService.java
index e70769ac275e2571a66cce4bc76a5518011b1c5d..c843bb524d2c81614848eeb5315d3666da1b544e 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BImageService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BImageService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BRadioButtonService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BRadioButtonService.java
similarity index 92%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BRadioButtonService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BRadioButtonService.java
index ae4b4250f88f47e70170eaef67dfd984d425af36..6092c7c7c4d1b8889a658e36f76a28881ec48cfe 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BRadioButtonService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BRadioButtonService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BRectangleService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BRectangleService.java
similarity index 92%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BRectangleService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BRectangleService.java
index f29b430d7c111916fc541e1f804fab319b757262..1c18ae9da50ef58f254861fb7a02fb5828528b47 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BRectangleService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BRectangleService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTableCellService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTableCellService.java
similarity index 95%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTableCellService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTableCellService.java
index 38c27cbaf1e5a37e64e8d174a8a24c9964117e09..f9c21fafff49607a1639f09aa847617ecb5386e4 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTableCellService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTableCellService.java
@@ -1,4 +1,4 @@
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTableColumnService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTableColumnService.java
similarity index 95%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTableColumnService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTableColumnService.java
index 6290adc316a60ca35f9cff2883b2bfb4947d6b43..893f8344112e2a6115d8b9848ef2612e640be51e 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTableColumnService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTableColumnService.java
@@ -1,4 +1,4 @@
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTableService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTableService.java
similarity index 93%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTableService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTableService.java
index 67da1a6148b0f376502b36e0047ce42a98a36e70..e54ddd5de872a8868bebf6f1524f3c7e4ff4eb02 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTableService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTableService.java
@@ -1,4 +1,4 @@
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTextService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTextService.java
similarity index 92%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTextService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTextService.java
index 77fcbaa39c22f72ab5fc3b3e70c13bbe32709245..6bf14bc403ca03eb36294d60f5389d744d6f86a3 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTextService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTextService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTextfieldService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTextfieldService.java
similarity index 92%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTextfieldService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTextfieldService.java
index 694879b12b6db775ff764b93e24d10bdd8fe06a2..1b66a40c36158c7a1c569bdcd87a606254a9f72d 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/BTextfieldService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/BTextfieldService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/LightService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/LightService.java
similarity index 93%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/LightService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/LightService.java
index 84b8215550198df61c4f29f869381d83c2c34829..71ebf592f81beaad3bf45b07c5c50ecbac09bb59 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/LightService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/LightService.java
@@ -1,4 +1,4 @@
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/SignalService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/SignalService.java
similarity index 92%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/SignalService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/SignalService.java
index fd0c914a64001a7efa025c7575b4ebb135b3e5af..95dd51a686cedef9ccbd86bb376fe3421faf768a 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/SignalService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/SignalService.java
@@ -3,7 +3,7 @@
  * Heinrich Heine Universitaet Duesseldorf
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/SwitchService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/SwitchService.java
similarity index 91%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/SwitchService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/SwitchService.java
index a4b441ea9c245575cb08e9a7e005f49bc3042016..bb4c4850ea30bb529021a688dc71174aa7af4b24 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/SwitchService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/SwitchService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/TankService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/TankService.java
similarity index 91%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/TankService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/TankService.java
index cc28f1eee33f501553c80c75fb73f39038c9c9c4..80c1a38cd19221bd8e0e48a071cc89af377b451f 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/TankService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/TankService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/TrackNodeService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/TrackNodeService.java
similarity index 91%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/TrackNodeService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/TrackNodeService.java
index d3b12c90a0e77b55080a024aa620e74293abdc7e..c01bcaa080339ca1934876ae7026a88f039aeb9c 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/TrackNodeService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/TrackNodeService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import de.bmotionstudio.gef.editor.AbstractBControlService;
 import de.bmotionstudio.gef.editor.IBControlService;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/TrackService.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/TrackService.java
similarity index 94%
rename from de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/TrackService.java
rename to de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/TrackService.java
index 4b90a844cd2925a2ae1411f24bed3edd59c72812..ccd221193739c9280e3d368dd917f3ed8d3cfb4b 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/service/TrackService.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/model/service/TrackService.java
@@ -4,7 +4,7 @@
  * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
  * */
 
-package de.bmotionstudio.gef.editor.service;
+package de.bmotionstudio.gef.editor.model.service;
 
 import org.eclipse.core.runtime.IConfigurationElement;
 import org.eclipse.gef.palette.ConnectionCreationToolEntry;
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/util/FileUtil.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/util/FileUtil.java
deleted file mode 100644
index f0087ca90117a51b178e895aaa5446e0d0ab8faf..0000000000000000000000000000000000000000
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/util/FileUtil.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/** 
- * (c) 2009 Lehrstuhl fuer Softwaretechnik und Programmiersprachen, 
- * Heinrich Heine Universitaet Duesseldorf
- * This software is licenced under EPL 1.0 (http://www.eclipse.org/org/documents/epl-v10.html) 
- * */
-
-package de.bmotionstudio.gef.editor.util;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.nio.MappedByteBuffer;
-import java.nio.channels.FileChannel;
-
-public class FileUtil {
-
-	/** Fast & simple file copy. */
-	public static void copyFile(File source, File dest) throws IOException {
-		FileChannel in = null, out = null;
-		try {
-			in = new FileInputStream(source).getChannel();
-			out = new FileOutputStream(dest).getChannel();
-
-			long size = in.size();
-			MappedByteBuffer buf = in.map(FileChannel.MapMode.READ_ONLY, 0,
-					size);
-
-			out.write(buf);
-		} finally {
-			if (in != null)
-				in.close();
-			if (out != null)
-				out.close();
-		}
-	}
-
-	public static void deleteFile(File f) {
-		// Attempt to delete it
-		boolean success = f.delete();
-		if (!success)
-			throw new IllegalArgumentException("Delete: deletion failed");
-	}
-
-}
diff --git a/de.bmotionstudio.rodin/src/de/bmotionstudio/rodin/StartEventBVisualizationHandler.java b/de.bmotionstudio.rodin/src/de/bmotionstudio/rodin/StartEventBVisualizationHandler.java
index f591535b259b59fd71d805118a27db38565c7709..b35987661b39908266d99274771a054655e3f93e 100644
--- a/de.bmotionstudio.rodin/src/de/bmotionstudio/rodin/StartEventBVisualizationHandler.java
+++ b/de.bmotionstudio.rodin/src/de/bmotionstudio/rodin/StartEventBVisualizationHandler.java
@@ -10,7 +10,7 @@ import org.eclipse.core.commands.IHandler;
 import org.eclipse.core.resources.IFile;
 import org.eclipse.jface.viewers.IStructuredSelection;
 
-import de.bmotionstudio.gef.editor.internal.StartVisualizationFileHandler;
+import de.bmotionstudio.gef.editor.handler.StartVisualizationFileHandler;
 
 /**
  * @author Lukas Ladenberger