diff --git a/src/main/java/teetime/framework/A0UnconnectedPort.java b/src/main/java/teetime/framework/A0UnconnectedPort.java
index c3fd19bdbed9b5067c62175a2189d839cc759db2..0ffe8960192b76e4d5da9a4222e557a18d97c53f 100644
--- a/src/main/java/teetime/framework/A0UnconnectedPort.java
+++ b/src/main/java/teetime/framework/A0UnconnectedPort.java
@@ -21,7 +21,10 @@ import org.slf4j.LoggerFactory;
 import teetime.framework.Traverser.VisitorBehavior;
 import teetime.framework.pipe.DummyPipe;
 
-public class A0UnconnectedPort implements ITraverserVisitor {
+/**
+ * Connects unconnected ports to a dummy pipe
+ */
+class A0UnconnectedPort implements ITraverserVisitor {
 
 	private static final Logger LOGGER = LoggerFactory.getLogger(A0UnconnectedPort.class);
 
diff --git a/src/main/java/teetime/framework/A1ThreadableStageCollector.java b/src/main/java/teetime/framework/A1ThreadableStageCollector.java
index 29f639c1583286593cc5f92ec090a65d3fa0beb5..0b34c30bdb024cde2a78756d2dd4524514736cd5 100644
--- a/src/main/java/teetime/framework/A1ThreadableStageCollector.java
+++ b/src/main/java/teetime/framework/A1ThreadableStageCollector.java
@@ -20,7 +20,10 @@ import java.util.Set;
 
 import teetime.framework.Traverser.VisitorBehavior;
 
-public class A1ThreadableStageCollector implements ITraverserVisitor {
+/**
+ * Searches for threadable stages
+ */
+class A1ThreadableStageCollector implements ITraverserVisitor {
 
 	private final Set<Stage> threadableStages = new HashSet<Stage>();
 
diff --git a/src/main/java/teetime/framework/A2InvalidThreadAssignmentCheck.java b/src/main/java/teetime/framework/A2InvalidThreadAssignmentCheck.java
index 63dda41051df7108d72766d3a94142dcd18a1e3a..043c31ee365f61ce0fd2927f51b55c393e71c2f7 100644
--- a/src/main/java/teetime/framework/A2InvalidThreadAssignmentCheck.java
+++ b/src/main/java/teetime/framework/A2InvalidThreadAssignmentCheck.java
@@ -17,12 +17,15 @@ package teetime.framework;
 
 import java.util.Set;
 
-import teetime.framework.Traverser.VisitorBehavior;
-import teetime.framework.pipe.IPipe;
-
 import com.carrotsearch.hppc.ObjectIntHashMap;
 import com.carrotsearch.hppc.ObjectIntMap;
 
+import teetime.framework.Traverser.VisitorBehavior;
+import teetime.framework.pipe.IPipe;
+
+/**
+ * Checks for invalid thread assignments
+ */
 public class A2InvalidThreadAssignmentCheck {
 
 	private static final int DEFAULT_COLOR = 0;
diff --git a/src/main/java/teetime/framework/A3PipeInstantiation.java b/src/main/java/teetime/framework/A3PipeInstantiation.java
index 9d6ca928adcbff7d8e5f1b30be8c67cc26abed4a..4bbe1a9cf9315b59b96ce98a788ed89d3b5c3377 100644
--- a/src/main/java/teetime/framework/A3PipeInstantiation.java
+++ b/src/main/java/teetime/framework/A3PipeInstantiation.java
@@ -26,7 +26,10 @@ import teetime.framework.pipe.SingleElementPipeFactory;
 import teetime.framework.pipe.SpScPipeFactory;
 import teetime.framework.pipe.UnboundedSpScPipeFactory;
 
-public class A3PipeInstantiation implements ITraverserVisitor {
+/**
+ * Automatically instantiates the correct pipes
+ */
+class A3PipeInstantiation implements ITraverserVisitor {
 
 	private static final IPipeFactory interBoundedThreadPipeFactory = new SpScPipeFactory();
 	private static final IPipeFactory interUnboundedThreadPipeFactory = new UnboundedSpScPipeFactory();
@@ -67,12 +70,11 @@ public class A3PipeInstantiation implements ITraverserVisitor {
 			} else {
 				interUnboundedThreadPipeFactory.create(pipe.getSourcePort(), pipe.getTargetPort(), 4);
 			}
-			return;
 		} else {
 			// normal or reflexive pipe => intra
+			intraThreadPipeFactory.create(pipe.getSourcePort(), pipe.getTargetPort(), 4);
 		}
 
-		intraThreadPipeFactory.create(pipe.getSourcePort(), pipe.getTargetPort(), 4);
 	}
 
 }
diff --git a/src/main/java/teetime/framework/A4StageAttributeSetter.java b/src/main/java/teetime/framework/A4StageAttributeSetter.java
index 1e8ea4c03757cac4c23e47fc645a60daa71b389f..3b57d5eb50abbdf6aeb7225b0759698383755485 100644
--- a/src/main/java/teetime/framework/A4StageAttributeSetter.java
+++ b/src/main/java/teetime/framework/A4StageAttributeSetter.java
@@ -17,7 +17,10 @@ package teetime.framework;
 
 import java.util.Set;
 
-public class A4StageAttributeSetter {
+/**
+ * Sets the attributes of all stages within the same thread
+ */
+class A4StageAttributeSetter {
 
 	private final Configuration configuration;
 	private final Set<Stage> threadableStages;