diff --git a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Bwa.scala b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Bwa.scala
index 00a9082250ad742eaa9561810497755062c371ea..51aa345d3ee2078e64e52a3ad0a69f92f937f505 100644
--- a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Bwa.scala
+++ b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Bwa.scala
@@ -9,10 +9,10 @@ import scala.sys.process._
 class Bwa(val globalConfig: Config) extends CommandLineFunction {
   def this() = this(new Config(Map()))
   this.analysisName = "bwa"
-  var config: Config = _
+  val config: Config = globalConfig.getAsConfig("bwa")
 
   @Argument(doc="Bwa executeble", shortName="bwa_exe", required=false) var bwa_exe: String = _
-  @Input(doc="The reference file for the bam files.", shortName="R", required=false) var referenceFile: File = _
+  @Input(doc="The reference file for the bam files.", shortName="R") var referenceFile: File = _
   @Input(doc="Fastq file R1", shortName="R1") var R1: File = _
   @Input(doc="Fastq file R2", shortName="R2", required=false) var R2: File = _
   @Output(doc="Output file SAM", shortName="output") var output: File = _
@@ -21,7 +21,6 @@ class Bwa(val globalConfig: Config) extends CommandLineFunction {
   @Argument(doc="M", shortName="M", required=false) var M: Boolean = false
   
   def init() {
-    config = Config.mergeConfigs(globalConfig.getAsConfig("bwa"), globalConfig)
     bwa_exe = config.getAsString("exe", "/usr/local/bin/bwa")
     M = config.getAsBoolean("M", true)
     jobResourceRequests :+= "h_vmem=" + config.getAsString("vmem", "6G")
diff --git a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Cutadapt.scala b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Cutadapt.scala
index dbe65357e2551bb49e883ddd124ce8c203df2e03..644326befaca2adc2d067d9e76ca7ae3bc5b915b 100644
--- a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Cutadapt.scala
+++ b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Cutadapt.scala
@@ -7,10 +7,10 @@ import java.io.File
 import scala.io.Source._
 import scala.sys.process._
 
-class Cutadapt(private var globalConfig: Config) extends CommandLineFunction {
+class Cutadapt(val globalConfig: Config) extends CommandLineFunction {
   def this() = this(new Config(Map()))
   analysisName = "cutadapt"
-  var config: Config = globalConfig.getAsConfig("cutadapt")
+  val config: Config = Config.mergeConfigs(globalConfig.getAsConfig("cutadapt"), globalConfig)
   
   @Input(doc="Cutadapt exe", required=false)
   var cutadapt_exe: File = new File(config.getAsString("exe","/usr/local/bin/cutadapt"))
diff --git a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Fastqc.scala b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Fastqc.scala
index 55394a44c2724a68191acca5445b8578cb5d402f..f88be9c157f56304d7a3eb10afc8335a322d61fb 100644
--- a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Fastqc.scala
+++ b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Fastqc.scala
@@ -6,10 +6,10 @@ import org.broadinstitute.sting.commandline._
 import java.io.File
 import scala.sys.process._
 
-class Fastqc(private var globalConfig: Config) extends CommandLineFunction {
+class Fastqc(val globalConfig: Config) extends CommandLineFunction {
   def this() = this(new Config(Map()))
   this.analysisName = "fastqc"
-  var config: Config = globalConfig.getAsConfig("fastqc")
+  val config: Config = globalConfig.getAsConfig("fastqc")
   
   @Input(doc="fastqc executeble", shortName="Fastqc_Exe")
   var fastqc_exe: File = new File(config.getAsString("exe","/usr/local/FastQC/FastQC_v0.10.1/fastqc"))
diff --git a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Sickle.scala b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Sickle.scala
index facb378da55fa5c21364b9c56e4eeb1c658c71e7..3c39d87604ded29d5508651d6024f83e9b04b662 100644
--- a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Sickle.scala
+++ b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Sickle.scala
@@ -7,10 +7,10 @@ import java.io.File
 import scala.io.Source._
 import scala.sys.process._
 
-class Sickle(private var globalConfig: Config) extends CommandLineFunction {
+class Sickle(val globalConfig: Config) extends CommandLineFunction {
   def this() = this(new Config(Map()))
   this.analysisName = "sickle"
-  var config: Config = globalConfig.getAsConfig("sickle")
+  val config: Config = globalConfig.getAsConfig("sickle")
   
   @Input(doc="Sickle exe", required=false) var sickle_exe: File = new File("/usr/local/bin/sickle")
   @Input(doc="R1 input") var input_R1: File = null
diff --git a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Star.scala b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Star.scala
index 079488837693f707a072523abaebd63bd0abed59..c6c241b6bf2877db1f6ae0362f153cb993447cd8 100644
--- a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Star.scala
+++ b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Star.scala
@@ -6,10 +6,10 @@ import org.broadinstitute.sting.commandline._
 import java.io.File
 import scala.sys.process._
 
-class Star(private var globalConfig: Config) extends CommandLineFunction {
+class Star(val globalConfig: Config) extends CommandLineFunction {
   def this() = this(new Config(Map()))
   this.analysisName = "STAR"
-  var config: Config = Config.mergeConfigs(globalConfig.getAsConfig("star"), globalConfig)
+  val config: Config = globalConfig.getAsConfig("star")
 
   @Argument(doc="STAR executeble", shortName="star_exe", required=false)
   var star_exe: String = config.getAsString("exe", "/usr/local/bin/STAR")
diff --git a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Zcat.scala b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Zcat.scala
index 36e31cfbc781b06309573d81dc1846a1d39f0726..f307616d34e08ff0a4b4af5addd8c0f0ebaa38b1 100644
--- a/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Zcat.scala
+++ b/biopet-framework/src/main/java/nl/lumc/sasc/biopet/wrappers/Zcat.scala
@@ -5,9 +5,10 @@ import org.broadinstitute.sting.queue.function.CommandLineFunction
 import org.broadinstitute.sting.commandline._
 import java.io.File
 
-class Zcat(private var config: Config) extends CommandLineFunction {
-	def this() = this(new Config(Map()))
-	this.analysisName = "zcat"
+class Zcat(val globalConfig: Config) extends CommandLineFunction {
+    def this() = this(new Config(Map()))
+    this.analysisName = "zcat"
+    val config: Config = globalConfig.getAsConfig("zcat")
 	  
     @Input(doc="Zipped file") var in: File = _
     @Output(doc="Unzipped file") var out: File = _