diff --git a/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/broad/GatkGeneral.scala b/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/broad/GatkGeneral.scala
index 8bd2d588d704b668f76d8c502b66c209854cf54f..317581d3757e80ba504c8d86eae5a619224dc9f5 100644
--- a/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/broad/GatkGeneral.scala
+++ b/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/broad/GatkGeneral.scala
@@ -15,15 +15,16 @@ trait GatkGeneral extends CommandLineGATK with BiopetJavaCommandLineFunction wit
 
   jarFile = config("gatk_jar")
 
-  override val defaultCoreMemory = 4.0
+  override def defaultCoreMemory = 4.0
+  override def faiRequired = true
 
   if (config.contains("intervals")) intervals = config("intervals").asFileList
   if (config.contains("exclude_intervals")) excludeIntervals = config("exclude_intervals").asFileList
   if (config.contains("gatk_key")) gatk_key = config("gatk_key")
   if (config.contains("pedigree")) pedigree = config("pedigree")
 
-  override val versionRegex = """(.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """(.*)""".r
+  override def versionExitcode = List(0, 1)
   override def versionCommand = executable + " -jar " + jarFile + " -version"
 
   override def getVersion = super.getVersion.collect { case version => "Gatk " + version }
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetCommandLineFunctionTrait.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetCommandLineFunctionTrait.scala
index e732abbfad7e762436178aa7492fa1c64c87571e..bbb10a9053cd42b9581c0373766b9794a84b417a 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetCommandLineFunctionTrait.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetCommandLineFunctionTrait.scala
@@ -33,11 +33,11 @@ trait BiopetCommandLineFunctionTrait extends CommandLineFunction with Configurab
   var deps: List[File] = Nil
 
   var threads = 0
-  val defaultThreads = 1
+  def defaultThreads = 1
 
   var vmem: Option[String] = config("vmem")
-  protected val defaultCoreMemory: Double = 1.0
-  protected val defaultVmemFactor: Double = 1.4
+  protected def defaultCoreMemory: Double = 1.0
+  protected def defaultVmemFactor: Double = 1.4
   var vmemFactor: Double = config("vmem_factor", default = defaultVmemFactor)
 
   var residentFactor: Double = config("resident_factor", default = 1.2)
@@ -151,10 +151,10 @@ trait BiopetCommandLineFunctionTrait extends CommandLineFunction with Configurab
   protected def versionCommand: String = null
 
   /** Regex to get version from version command output */
-  protected val versionRegex: Regex = null
+  protected def versionRegex: Regex = null
 
   /** Allowed exit codes for the version command */
-  protected val versionExitcode = List(0)
+  protected def versionExitcode = List(0)
 
   /** Executes the version command */
   private[core] def getVersionInternal(): Option[String] = {
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetJavaCommandLineFunction.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetJavaCommandLineFunction.scala
index 6904cdcd07a15181cef54e9e33b7b0bdbeb78387..8cf47ae28e813371cce303ee0788b1090a2439a6 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetJavaCommandLineFunction.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/BiopetJavaCommandLineFunction.scala
@@ -25,7 +25,7 @@ trait BiopetJavaCommandLineFunction extends JavaCommandLineFunction with BiopetC
   javaGCHeapFreeLimit = config("java_gc_heap_freelimit")
   javaGCTimeLimit = config("java_gc_timelimit")
 
-  override protected val defaultVmemFactor: Double = 2.0
+  override protected def defaultVmemFactor: Double = 2.0
 
   /** Constructs java opts, this adds scala threads */
   override def javaOpts = super.javaOpts +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/Reference.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/Reference.scala
index 8420a107af397e9daca3c991440414e305ca7b0f..84ef97459b3e32cceee8e2b31be3171ab36bc072 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/Reference.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/Reference.scala
@@ -59,6 +59,7 @@ trait Reference extends Configurable {
 
   /** Create summary part for reference */
   def referenceSummary: Map[String, Any] = {
+    Reference.requireDict(referenceFasta())
     val file = new IndexedFastaSequenceFile(referenceFasta())
     Map("contigs" ->
       (for (seq <- file.getSequenceDictionary.getSequences) yield seq.getSequenceName -> {
@@ -77,16 +78,8 @@ trait Reference extends Configurable {
     if (!Reference.checked.contains(file)) {
       require(file.exists(), "Reference not found: " + file)
 
-      if (dictRequired) {
-        val dict = new File(file.getAbsolutePath.stripSuffix(".fa").stripSuffix(".fasta") + ".dict")
-        require(dict.exists(), "Reference is missing a dict file")
-      }
-
-      if (faiRequired) {
-        val fai = new File(file.getAbsolutePath + ".fai")
-        require(fai.exists(), "Reference is missing a fai file")
-        require(IndexedFastaSequenceFile.canCreateIndexedFastaReader(file), "Index of reference cannot be loaded, reference: " + file)
-      }
+      if (dictRequired) Reference.requireDict(file)
+      if (faiRequired) Reference.requireFai(file)
 
       Reference.checked += file
     }
@@ -97,4 +90,26 @@ object Reference {
 
   /** Used as cache to avoid double checking */
   private var checked: Set[File] = Set()
+
+  /**
+   * Raise an exception when given fasta file has no fai file
+   * @param fastaFile Fasta file
+   * @throws IllegalArgumentException
+   */
+  def requireFai(fastaFile: File): Unit = {
+    val fai = new File(fastaFile.getAbsolutePath + ".fai")
+    require(fai.exists(), "Reference is missing a fai file")
+    require(IndexedFastaSequenceFile.canCreateIndexedFastaReader(fastaFile),
+      "Index of reference cannot be loaded, reference: " + fastaFile)
+  }
+
+  /**
+   * Raise an exception when given fasta file has no dict file
+   * @param fastaFile Fasta file
+   * @throws IllegalArgumentException
+   */
+  def requireDict(fastaFile: File): Unit = {
+    val dict = new File(fastaFile.getAbsolutePath.stripSuffix(".fa").stripSuffix(".fasta") + ".dict")
+    require(dict.exists(), "Reference is missing a dict file")
+  }
 }
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/report/ReportBuilder.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/report/ReportBuilder.scala
index 0312853bd97aa2dfa7793015ddf51d42977370f5..aa99a2f93a6a6244af443ab9ee844ebbea8e3c50 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/report/ReportBuilder.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/report/ReportBuilder.scala
@@ -26,7 +26,7 @@ trait ReportBuilderExtension extends ToolCommandFuntion {
   /** Arguments that are passed on the commandline */
   var args: Map[String, String] = Map()
 
-  override val defaultCoreMemory = 3.0
+  override def defaultCoreMemory = 3.0
 
   override def beforeGraph: Unit = {
     super.beforeGraph
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Bowtie.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Bowtie.scala
index 14d0de4a621956d38bf3da28cf19358d75dbea57..aba6df889be7ef5c546865796732c0aa42d7c0ff 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Bowtie.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Bowtie.scala
@@ -40,12 +40,12 @@ class Bowtie(val root: Configurable) extends BiopetCommandLineFunction with Refe
   var output: File = null
 
   executable = config("exe", default = "bowtie", freeVar = false)
-  override val versionRegex = """.*[Vv]ersion:? (.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """.*[Vv]ersion:? (.*)""".r
+  override def versionExitcode = List(0, 1)
   override def versionCommand = executable + " --version"
 
-  override val defaultCoreMemory = 4.0
-  override val defaultThreads = 8
+  override def defaultCoreMemory = 4.0
+  override def defaultThreads = 8
 
   var sam: Boolean = config("sam", default = true)
   var sam_RG: Option[String] = config("sam-RG")
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cufflinks.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cufflinks.scala
index b252d9c9eb9033a077b91f6259a9533c2b6015eb..f27b28ce66d97c8b1f5366f6e565beae1f72f5ba 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cufflinks.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cufflinks.scala
@@ -30,10 +30,10 @@ class Cufflinks(val root: Configurable) extends BiopetCommandLineFunction {
   executable = config("exe", default = "cufflinks")
 
   /** default threads */
-  override val defaultThreads = 8
+  override def defaultThreads = 8
 
   /** default vmem for cluster jobs */
-  override val defaultCoreMemory = 6.0
+  override def defaultCoreMemory = 6.0
 
   /** input file */
   @Input(doc = "Input file (SAM or BAM)", required = true)
@@ -184,9 +184,9 @@ class Cufflinks(val root: Configurable) extends BiopetCommandLineFunction {
   /** do not contact server to check for update availability [FALSE] */
   var no_update_check: Boolean = config("no_update_check", default = false)
 
-  override val versionRegex = """cufflinks v(.*)""".r
+  override def versionRegex = """cufflinks v(.*)""".r
   override def versionCommand = executable
-  override val versionExitcode = List(0, 1)
+  override def versionExitcode = List(0, 1)
 
   def cmdLine =
     required(executable) +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cuffquant.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cuffquant.scala
index d5eee9c85caadfc38113d1718816ba28b4c29e44..3f33b314852c0e0f6c1e1524395083a238df0a28 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cuffquant.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cuffquant.scala
@@ -117,9 +117,9 @@ class Cuffquant(val root: Configurable) extends BiopetCommandLineFunction {
   /** Disable SCV correction */
   var no_scv_correction: Boolean = config("no_scv_correction", default = false)
 
-  override val versionRegex = """cuffquant v(.*)""".r
+  override def versionRegex = """cuffquant v(.*)""".r
   override def versionCommand = executable
-  override val versionExitcode = List(0, 1)
+  override def versionExitcode = List(0, 1)
 
   def cmdLine =
     required(executable) +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cutadapt.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cutadapt.scala
index 10aeca2920d79ccff132f6b1e86e6dc6b9e02818..3b0c7f8d4811068de6222e23477297753d46a9f4 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cutadapt.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Cutadapt.scala
@@ -40,7 +40,7 @@ class Cutadapt(val root: Configurable) extends BiopetCommandLineFunction with Su
 
   executable = config("exe", default = "cutadapt")
   override def versionCommand = executable + " --version"
-  override val versionRegex = """(.*)""".r
+  override def versionRegex = """(.*)""".r
 
   var default_clip_mode: String = config("default_clip_mode", default = "3")
   var opt_adapter: Set[String] = config("adapter", default = Nil)
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Fastqc.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Fastqc.scala
index c7b2f7b43074fbf18bfb22757d49db78c0e0701c..150646eaf0a5e74e69c798621087ef832909dee9 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Fastqc.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Fastqc.scala
@@ -48,9 +48,9 @@ class Fastqc(val root: Configurable) extends BiopetCommandLineFunction {
   var nogroup: Boolean = config("nogroup", default = false)
   var extract: Boolean = config("extract", default = true)
 
-  override val versionRegex = """FastQC (.*)""".r
+  override def versionRegex = """FastQC (.*)""".r
   override def versionCommand = executable + " --version"
-  override val defaultThreads = 4
+  override def defaultThreads = 4
 
   /** Sets contaminants and adapters when not yet set */
   override def beforeGraph {
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Freebayes.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Freebayes.scala
index 7ed63f27c9f31775b68ffb32c885c2cc0590ea2d..47c1fd22ea5815d8ab8875da3cecd03626b9a0b5 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Freebayes.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Freebayes.scala
@@ -39,7 +39,7 @@ class Freebayes(val root: Configurable) extends BiopetCommandLineFunction with R
   var haplotypeLength: Option[Int] = config("haplotype_length")
 
   executable = config("exe", default = "freebayes")
-  override val versionRegex = """version:  (.*)""".r
+  override def versionRegex = """version:  (.*)""".r
   override def versionCommand = executable + " --version"
 
   override def beforeGraph: Unit = {
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Gsnap.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Gsnap.scala
index 5699db9860e43c1dd82ecb8ea8ab47ec34668456..4e00872519838fe2b2c34fe4deaaf75aaf367de3 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Gsnap.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Gsnap.scala
@@ -32,10 +32,10 @@ class Gsnap(val root: Configurable) extends BiopetCommandLineFunction with Refer
   executable = config("exe", default = "gsnap", freeVar = false)
 
   /** default threads */
-  override val defaultThreads = 8
+  override def defaultThreads = 8
 
   /** default vmem for cluster jobs */
-  override val defaultCoreMemory = 10.0
+  override def defaultCoreMemory = 10.0
 
   /** input file */
   @Input(doc = "Input FASTQ file(s)", required = true) //var input: List[File] = _
@@ -329,7 +329,7 @@ class Gsnap(val root: Configurable) extends BiopetCommandLineFunction with Refer
   /** value to put into read-group library (rg-pl) field */
   var read_group_platform: Option[String] = config("read_group_platform")
 
-  override val versionRegex = """.* version (.*)""".r
+  override def versionRegex = """.* version (.*)""".r
   override def versionCommand = executable + " --version"
 
   def cmdLine = {
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Gzip.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Gzip.scala
index 2c720f63630222e25d40042938c745713242ab40..08bd69769390d4efaebb8e63f8851119059d9900 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Gzip.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Gzip.scala
@@ -29,7 +29,7 @@ class Gzip(val root: Configurable) extends BiopetCommandLineFunction {
 
   executable = config("exe", default = "gzip")
 
-  override val versionRegex = """gzip (.*)""".r
+  override def versionRegex = """gzip (.*)""".r
   override def versionCommand = executable + " --version"
 
   def cmdLine = required(executable) + " -c " + repeat(input) + " > " + required(output)
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/HtseqCount.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/HtseqCount.scala
index 0050ea21491f1d53ab90373adc7447450bc5ba5e..9fbd2e87b3460c94e3b6613abaa95bf90312e368 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/HtseqCount.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/HtseqCount.scala
@@ -69,7 +69,7 @@ class HtseqCount(val root: Configurable) extends BiopetCommandLineFunction {
   /** suppress progress report */
   var quiet: Boolean = config("quiet", default = false)
 
-  override val versionRegex = """.*, version (.*)\.""".r
+  override def versionRegex = """.*, version (.*)\.""".r
   override def versionCommand = executable + " --help"
 
   def cmdLine = {
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Md5sum.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Md5sum.scala
index e2ce9c6bc4181d659263e17fd880535597975a55..504cf671bf3e77138ec43ddd3c981062f080c079 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Md5sum.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Md5sum.scala
@@ -33,7 +33,7 @@ class Md5sum(val root: Configurable) extends BiopetCommandLineFunction {
 
   executable = config("exe", default = "md5sum")
 
-  override val versionRegex = """md5sum \(GNU coreutils\) (.*)""".r
+  override def versionRegex = """md5sum \(GNU coreutils\) (.*)""".r
   override def versionCommand = executable + " --version"
 
   /** return commandline to execute */
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Pbzip2.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Pbzip2.scala
index 830e72df7549355ec037e7392e4e12327379cc2d..960641d21b8d94abd6144f7d485ce78b8efae871 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Pbzip2.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Pbzip2.scala
@@ -33,8 +33,8 @@ class Pbzip2(val root: Configurable) extends BiopetCommandLineFunction {
   var decomrpess = true
   var memory: Option[Int] = config("memory")
 
-  override val defaultCoreMemory = memory.getOrElse(1000).toDouble / 1000
-  override val defaultThreads = 2
+  override def defaultCoreMemory = memory.getOrElse(1000).toDouble / 1000
+  override def defaultThreads = 2
 
   override def beforeCmd {
     if (!memory.isEmpty) memory = Option(memory.get * threads)
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Raxml.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Raxml.scala
index ff7b56110c342c32b30e0af7c67cfc3118240eb5..ac831c487f10d9af833d89bfdd30eadf184032ed 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Raxml.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Raxml.scala
@@ -27,9 +27,9 @@ import scalaz.std.boolean.option
  */
 class Raxml(val root: Configurable) extends BiopetCommandLineFunction {
 
-  override val defaultThreads = 1
+  override def defaultThreads = 1
   override def versionCommand = executable + " -v"
-  override val versionRegex = """.*version ([\w\.]*) .*""".r
+  override def versionRegex = """.*version ([\w\.]*) .*""".r
 
   @Input(doc = "Input phy/fasta file", required = true)
   var input: File = _
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Sickle.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Sickle.scala
index c1e95e91ccec4a5b974de3cdf86362817ffdfa1d..c3eb841f404ce91322cfa1ca564cbf1ba61ca8e4 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Sickle.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Sickle.scala
@@ -58,7 +58,7 @@ class Sickle(val root: Configurable) extends BiopetCommandLineFunction with Summ
   var discardN: Boolean = config("discardN", default = false)
   var quiet: Boolean = config("quiet", default = false)
   var defaultQualityType: String = config("defaultqualitytype", default = "sanger")
-  override val versionRegex = """sickle version (.*)""".r
+  override def versionRegex = """sickle version (.*)""".r
   override def versionCommand = executable + " --version"
 
   /** Sets qualityType is still empty */
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Stampy.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Stampy.scala
index 1482d6b99b621894373feb66f7b8a985bc479225..dd851cdd14c730407d5423685cfe8138a5288045 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Stampy.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Stampy.scala
@@ -60,12 +60,12 @@ class Stampy(val root: Configurable) extends BiopetCommandLineFunction with Refe
   var logfile: Option[String] = config("logfile")
 
   executable = config("exe", default = "stampy.py", freeVar = false)
-  override val versionRegex = """stampy v(.*) \(.*\), .*""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """stampy v(.*) \(.*\), .*""".r
+  override def versionExitcode = List(0, 1)
 
   /// Stampy uses approx factor 1.1 times the size of the genome in memory.
-  override val defaultCoreMemory = 4.0
-  override val defaultThreads = 8
+  override def defaultCoreMemory = 4.0
+  override def defaultThreads = 8
 
   override def versionCommand = executable + " --help"
 
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Star.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Star.scala
index 36ecaba7ee087c3b5e859cc089fa418729e77d62..dfc2f602db7136f2c6bfc921ea41a5b18b135c5b 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Star.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Star.scala
@@ -63,8 +63,8 @@ class Star(val root: Configurable) extends BiopetCommandLineFunction with Refere
   var outFileNamePrefix: String = _
   var runThreadN: Option[Int] = config("runThreadN")
 
-  override val defaultCoreMemory = 4.0
-  override val defaultThreads = 8
+  override def defaultCoreMemory = 4.0
+  override def defaultThreads = 8
 
   /** Sets output files for the graph */
   override def beforeGraph() {
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Tabix.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Tabix.scala
index c32326f342ea6d4e2b690b51a4755d84c561cb14..e9380c683f39173a791dfb946515e61dd3ffe368 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Tabix.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Tabix.scala
@@ -60,8 +60,8 @@ class Tabix(val root: Configurable) extends BiopetCommandLineFunction {
   executable = config("exe", default = "tabix")
 
   override def versionCommand = executable
-  override val versionRegex = """Version: (.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """Version: (.*)""".r
+  override def versionExitcode = List(0, 1)
 
   /** Formats that tabix can handle */
   private val validFormats: Set[String] = Set("gff", "bed", "sam", "vcf", "psltbl")
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Tophat.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Tophat.scala
index d4103a5b2ab71c917f8282587939ddf1bc01691b..82332de297f12df794fa3d770c3dcc22da04f57a 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Tophat.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Tophat.scala
@@ -28,12 +28,12 @@ class Tophat(val root: Configurable) extends BiopetCommandLineFunction {
 
   executable = config("exe", default = "tophat", freeVar = false)
 
-  override val versionRegex = """TopHat v(.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """TopHat v(.*)""".r
+  override def versionExitcode = List(0, 1)
   override def versionCommand = executable + " --version"
 
-  override val defaultCoreMemory = 4.0
-  override val defaultThreads = 8
+  override def defaultCoreMemory = 4.0
+  override def defaultThreads = 8
 
   @Input(doc = "FastQ file(s) R1", shortName = "R1")
   var R1: List[File] = List.empty[File]
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/VariantEffectPredictor.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/VariantEffectPredictor.scala
index 977e4aa8551fcc46ed63d99f8a87f3391bde629d..2c9f1418c8d982da3663fa7dd3a950c405b013bc 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/VariantEffectPredictor.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/VariantEffectPredictor.scala
@@ -36,7 +36,7 @@ class VariantEffectPredictor(val root: Configurable) extends BiopetCommandLineFu
   @Output(doc = "output file", required = true)
   var output: File = null
 
-  override val versionRegex = """version (\d*)""".r
+  override def versionRegex = """version (\d*)""".r
   override def versionCommand = executable + " " + vep_script + " --help"
 
   //Boolean vars
@@ -134,7 +134,7 @@ class VariantEffectPredictor(val root: Configurable) extends BiopetCommandLineFu
   var cache_region_size: Option[String] = config("cache_region_size")
 
   // Numeric args
-  override val defaultThreads: Int = config("fork", default = 2)
+  override def defaultThreads: Int = config("fork", default = 2)
   var cache_version: Option[Int] = config("cache_version")
   var freq_freq: Option[Float] = config("freq_freq")
   var port: Option[Int] = config("port")
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Zcat.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Zcat.scala
index 51735af04705760812572e88c0b1286d429b837b..8140bfc8efce739d6e172364be47a3dc978aaa46 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Zcat.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Zcat.scala
@@ -30,7 +30,7 @@ class Zcat(val root: Configurable) extends BiopetCommandLineFunction {
 
   executable = config("exe", default = "zcat")
 
-  override val versionRegex = """zcat \(gzip\) (.*)""".r
+  override def versionRegex = """zcat \(gzip\) (.*)""".r
   override def versionCommand = executable + " --version"
 
   /** Returns command to execute */
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bcftools/Bcftools.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bcftools/Bcftools.scala
index ac2c3ec3f0a42b3c74978a6b2d095ebe10d49fcd..5071c3aefe7092e2660ac9051ff34c8d90435e74 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bcftools/Bcftools.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bcftools/Bcftools.scala
@@ -21,6 +21,6 @@ abstract class Bcftools extends BiopetCommandLineFunction {
   override def subPath = "bcftools" :: super.subPath
   executable = config("exe", default = "bcftools")
   override def versionCommand = executable
-  override val versionRegex = """Version: (.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """Version: (.*)""".r
+  override def versionExitcode = List(0, 1)
 }
\ No newline at end of file
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bedtools/Bedtools.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bedtools/Bedtools.scala
index d9aa1dd948077509e73494b09046f7cd377f3398..96b073ffe9390e9802e59eb42095546ef79c7344 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bedtools/Bedtools.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bedtools/Bedtools.scala
@@ -22,5 +22,5 @@ abstract class Bedtools extends BiopetCommandLineFunction {
   override def subPath = "bedtools" :: super.subPath
   executable = config("exe", default = "bedtools", submodule = "bedtools")
   override def versionCommand = executable + " --version"
-  override val versionRegex = """bedtools (.*)""".r
+  override def versionRegex = """bedtools (.*)""".r
 }
\ No newline at end of file
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bedtools/BedtoolsCoverage.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bedtools/BedtoolsCoverage.scala
index b84ebb49fadc7042e27dd743bfdf69a4d8fab65a..f1ea4719702c489c794acc2cb78d0d7dc5994699 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bedtools/BedtoolsCoverage.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bedtools/BedtoolsCoverage.scala
@@ -46,7 +46,7 @@ class BedtoolsCoverage(val root: Configurable) extends Bedtools {
     if (input.getName.endsWith(".bam")) inputTag = "-abam"
   }
 
-  override val defaultCoreMemory = 4.0
+  override def defaultCoreMemory = 4.0
 
   /** Returns command to execute */
   def cmdLine = required(executable) + required("coverage") +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/breakdancer/BreakdancerCaller.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/breakdancer/BreakdancerCaller.scala
index 72baafb551d465fa90f08523fc0c85795892edb5..c9a3606f38195daab17eaeb5bf58dbbcec4931a5 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/breakdancer/BreakdancerCaller.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/breakdancer/BreakdancerCaller.scala
@@ -9,10 +9,10 @@ import org.broadinstitute.gatk.utils.commandline.{ Input, Output }
 class BreakdancerCaller(val root: Configurable) extends BiopetCommandLineFunction {
   executable = config("exe", default = "breakdancer-max", freeVar = false)
 
-  override val defaultThreads = 1 // breakdancer can only work on 1 single thread
+  override def defaultThreads = 1 // breakdancer can only work on 1 single thread
 
-  override val versionRegex = """.*[Vv]ersion:? (.*)""".r
-  override val versionExitcode = List(1)
+  override def versionRegex = """.*[Vv]ersion:? (.*)""".r
+  override def versionExitcode = List(1)
   override def versionCommand = executable
 
   @Input(doc = "The breakdancer configuration file")
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/Bwa.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/Bwa.scala
index 14327abd62555031d6b7da06aed0fc9e1893e04c..a2cc17fae2c565dc8674a644afa3934423ef4378 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/Bwa.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/Bwa.scala
@@ -25,7 +25,7 @@ import nl.lumc.sasc.biopet.core.BiopetCommandLineFunction
 abstract class Bwa extends BiopetCommandLineFunction {
   override def subPath = "bwa" :: super.subPath
   executable = config("exe", default = "bwa")
-  override val versionRegex = """Version: (.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """Version: (.*)""".r
+  override def versionExitcode = List(0, 1)
   override def versionCommand = executable
 }
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/BwaAln.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/BwaAln.scala
index 441fe085d154de4337c6f903e3583f022744ffe0..610770441a886b08a95424b67e7219f6412c9cf1 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/BwaAln.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/BwaAln.scala
@@ -61,8 +61,8 @@ class BwaAln(val root: Configurable) extends Bwa with Reference {
   var n2: Boolean = config("2", default = false)
   var Y: Boolean = config("Y", default = false)
 
-  override val defaultCoreMemory = 4.0
-  override val defaultThreads = 8
+  override def defaultCoreMemory = 4.0
+  override def defaultThreads = 8
 
   override def beforeGraph {
     super.beforeGraph
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/BwaMem.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/BwaMem.scala
index 8025db65bbac6717105ce6b3d76ec6e3a191b04e..660aabc1ae17e3e5baa8154ff1451565865acd7f 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/BwaMem.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/bwa/BwaMem.scala
@@ -69,8 +69,8 @@ class BwaMem(val root: Configurable) extends Bwa with Reference {
   var Y: Boolean = config("Y", default = false)
   var I: Option[String] = config("I")
 
-  override val defaultCoreMemory = 4.0
-  override val defaultThreads = 8
+  override def defaultCoreMemory = 4.0
+  override def defaultThreads = 8
 
   override def beforeGraph {
     super.beforeGraph
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/clever/CleverCaller.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/clever/CleverCaller.scala
index 642a9c2adc0422912a39fb7d3a770f725e7d1491..895a1ee3b93b238810b1f98c82c1859915973cb9 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/clever/CleverCaller.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/clever/CleverCaller.scala
@@ -11,11 +11,11 @@ class CleverCaller(val root: Configurable) extends BiopetCommandLineFunction {
 
   private lazy val versionexecutable: File = config("version_exe", default = (new File(executable).getParent + "/ctk-version"))
 
-  override val defaultThreads = 8
+  override def defaultThreads = 8
 
   override def versionCommand = versionexecutable.getAbsolutePath
-  override val versionRegex = """(.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """(.*)""".r
+  override def versionExitcode = List(0, 1)
 
   @Input(doc = "Input file (bam)")
   var input: File = _
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/conifer/Conifer.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/conifer/Conifer.scala
index 40a5458566f840e2e3fa866024adf3ca0e5a86ee..64baaf3fd448c38009d07bf8e13b4995c4868d7f 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/conifer/Conifer.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/conifer/Conifer.scala
@@ -22,12 +22,12 @@ abstract class Conifer extends PythonCommandLineFunction {
   override def subPath = "conifer" :: super.subPath
   //  executable = config("exe", default = "conifer")
   setPythonScript(config("script", default = "conifer"))
-  override val versionRegex = """(.*)""".r
-  override val versionExitcode = List(0)
+  override def versionRegex = """(.*)""".r
+  override def versionExitcode = List(0)
   override def versionCommand = executable + " " + python_script + " --version"
 
-  override val defaultCoreMemory = 5.0
-  override val defaultThreads = 1
+  override def defaultCoreMemory = 5.0
+  override def defaultThreads = 1
 
   def cmdLine = getPythonCommand
 
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/delly/DellyCaller.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/delly/DellyCaller.scala
index fb484ca32e93a85545af648a2a67636307284310..241681385726ab1cbc5f96c437aed680aa9ae9dc 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/delly/DellyCaller.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/delly/DellyCaller.scala
@@ -12,11 +12,11 @@ class DellyCaller(val root: Configurable) extends BiopetCommandLineFunction {
 
   private lazy val versionexecutable: File = new File(executable)
 
-  override val defaultThreads = 1
+  override def defaultThreads = 1
 
   override def versionCommand = versionexecutable.getAbsolutePath
-  override val versionRegex = """DELLY \(Version: (.*)\)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """DELLY \(Version: (.*)\)""".r
+  override def versionExitcode = List(0, 1)
 
   @Input(doc = "Input file (bam)")
   var input: File = _
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/Gatk.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/Gatk.scala
index 10122b2bd8593667b1d5beba809d449c1a16d6ce..3684b8466c1e54b6057aea0ac311a472f51f92fe 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/Gatk.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/Gatk.scala
@@ -31,7 +31,7 @@ abstract class Gatk extends BiopetJavaCommandLineFunction with Reference {
 
   val analysisType: String
 
-  override val defaultCoreMemory = 3.0
+  override def defaultCoreMemory = 3.0
 
   @Input(required = true)
   var reference: File = null
@@ -48,8 +48,8 @@ abstract class Gatk extends BiopetJavaCommandLineFunction with Reference {
   @Input(required = false)
   var pedigree: List[File] = config("pedigree", default = Nil)
 
-  override val versionRegex = """(.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """(.*)""".r
+  override def versionExitcode = List(0, 1)
   override def versionCommand = executable + " -jar " + jarFile + " -version"
 
   override def getVersion = super.getVersion.collect { case version => "Gatk " + version }
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/igvtools/IGVTools.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/igvtools/IGVTools.scala
index d0785a24cd36fd7725ae072085f694eae1917093..3d29b94f7c428a16bc8ac9eaf2999ef34484447c 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/igvtools/IGVTools.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/igvtools/IGVTools.scala
@@ -25,6 +25,6 @@ import nl.lumc.sasc.biopet.core.BiopetCommandLineFunction
 abstract class IGVTools extends BiopetCommandLineFunction {
   executable = config("exe", default = "igvtools", submodule = "igvtools", freeVar = false)
   override def versionCommand = executable + " version"
-  override val versionRegex = """IGV Version:? ([\w\.]*) .*""".r
-  override val versionExitcode = List(0)
+  override def versionRegex = """IGV Version:? ([\w\.]*) .*""".r
+  override def versionExitcode = List(0)
 }
\ No newline at end of file
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/igvtools/IGVToolsCount.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/igvtools/IGVToolsCount.scala
index 28e1502feba6d2e7e092491035392c274303a6cf..c749e0250ead9340341b7f1ec3b133a71d5d8957 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/igvtools/IGVToolsCount.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/igvtools/IGVToolsCount.scala
@@ -59,7 +59,7 @@ class IGVToolsCount(val root: Configurable) extends IGVTools {
 
   var pairs: Boolean = config("pairs", default = false)
 
-  override val defaultCoreMemory = 4.0
+  override def defaultCoreMemory = 4.0
 
   override def beforeGraph {
     super.beforeGraph
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/kraken/Kraken.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/kraken/Kraken.scala
index 71a2d850fd47591c7cf04efb7cd232d3a5512281..5d4b605a6c6cc634b7efb17d9070ebe693a3125c 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/kraken/Kraken.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/kraken/Kraken.scala
@@ -51,11 +51,11 @@ class Kraken(val root: Configurable) extends BiopetCommandLineFunction {
   var paired: Boolean = config("paired", default = false)
 
   executable = config("exe", default = "kraken")
-  override val versionRegex = """Kraken version ([\d\w\-\.]+)\n.*""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """Kraken version ([\d\w\-\.]+)\n.*""".r
+  override def versionExitcode = List(0, 1)
 
-  override val defaultCoreMemory = 8.0
-  override val defaultThreads = 4
+  override def defaultCoreMemory = 8.0
+  override def defaultThreads = 4
 
   override def versionCommand = executable + " --version"
 
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/kraken/KrakenReport.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/kraken/KrakenReport.scala
index 315921c1c55cf36dc2d447a0653a341e6f1f2581..a07e315606a171eb5f3063d8fe900067b042cb61 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/kraken/KrakenReport.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/kraken/KrakenReport.scala
@@ -26,11 +26,11 @@ import org.broadinstitute.gatk.utils.commandline.{ Input, Output }
 class KrakenReport(val root: Configurable) extends BiopetCommandLineFunction {
 
   executable = config("exe", default = "kraken-report")
-  override val versionRegex = """Kraken version (.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """Kraken version (.*)""".r
+  override def versionExitcode = List(0, 1)
 
-  override val defaultCoreMemory = 4.0
-  override val defaultThreads = 1
+  override def defaultCoreMemory = 4.0
+  override def defaultThreads = 1
 
   override def versionCommand = new File(new File(executable).getParent, "kraken").getAbsolutePath + " --version"
 
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/macs2/Macs2.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/macs2/Macs2.scala
index f4bbcd20fab01f6c342761ef31f9063429f2ef3b..7a95d648d3deb549a5206eb71820898773279db2 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/macs2/Macs2.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/macs2/Macs2.scala
@@ -25,6 +25,6 @@ import nl.lumc.sasc.biopet.core.BiopetCommandLineFunction
 abstract class Macs2 extends BiopetCommandLineFunction {
   executable = config("exe", default = "macs2", submodule = "macs2", freeVar = false)
   override def versionCommand = executable + " --version"
-  override val versionRegex = """macs2 (.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """macs2 (.*)""".r
+  override def versionExitcode = List(0, 1)
 }
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/CollectMultipleMetrics.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/CollectMultipleMetrics.scala
index 46f9201d5475d85b88c2529a963c90334ce9623b..be3f7f42dc2ef4634ae1c27d510ddd4f6e2438ea 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/CollectMultipleMetrics.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/CollectMultipleMetrics.scala
@@ -15,7 +15,7 @@ class CollectMultipleMetrics(val root: Configurable) extends Picard with Summari
 
   javaMainClass = new picard.analysis.CollectMultipleMetrics().getClass.getName
 
-  override val defaultCoreMemory = 6.0
+  override def defaultCoreMemory = 6.0
 
   @Input(doc = "The input SAM or BAM files to analyze", required = true)
   var input: File = null
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/Picard.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/Picard.scala
index be22486e7413ca56fdb6ffe12b06cdce154ef427..772219d336465198ac90bb5973613979a9449fce 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/Picard.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/Picard.scala
@@ -58,10 +58,10 @@ abstract class Picard extends BiopetJavaCommandLineFunction {
     if (jarFile != null) executable + " -cp " + jarFile + " " + javaMainClass + " -h"
     else null
   }
-  override val versionRegex = """Version: (.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """Version: (.*)""".r
+  override def versionExitcode = List(0, 1)
 
-  override val defaultCoreMemory = 3.0
+  override def defaultCoreMemory = 3.0
 
   override def getVersion = {
     if (jarFile == null) Picard.getBiopetPicardVersion
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/pindel/PindelCaller.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/pindel/PindelCaller.scala
index 582e75eb8552db3e1bfc4ae2429bddc981568a62..63e1e213ff01e3f4e5a432487227acf4b226dff5 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/pindel/PindelCaller.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/pindel/PindelCaller.scala
@@ -23,11 +23,11 @@ import java.io.File
 class PindelCaller(val root: Configurable) extends BiopetCommandLineFunction {
   executable = config("exe", default = "pindel", freeVar = false)
 
-  override val defaultCoreMemory = 5.0
-  override val defaultThreads = 8
+  override def defaultCoreMemory = 5.0
+  override def defaultThreads = 8
 
-  override val versionRegex = """Pindel version:? (.*)""".r
-  override val versionExitcode = List(1)
+  override def versionRegex = """Pindel version:? (.*)""".r
+  override def versionExitcode = List(1)
   override def versionCommand = executable
 
   @Input(doc = "The pindel configuration file")
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/Sambamba.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/Sambamba.scala
index de2b93ee89cdb6fd99224304b4ee8b2b11d6a3e2..161d320297ec11ac2865a5fa5e7fbaf1d6c7329d 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/Sambamba.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/Sambamba.scala
@@ -19,13 +19,13 @@ import nl.lumc.sasc.biopet.core.BiopetCommandLineFunction
 
 /** General Sambamba extension */
 abstract class Sambamba extends BiopetCommandLineFunction {
-  override val defaultCoreMemory = 2.0
-  override val defaultThreads = 2
+  override def defaultCoreMemory = 2.0
+  override def defaultThreads = 2
 
   override def subPath = "sambamba" :: super.subPath
 
   executable = config("exe", default = "sambamba", freeVar = false)
   override def versionCommand = executable
-  override val versionRegex = """sambamba v(.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """sambamba v(.*)""".r
+  override def versionExitcode = List(0, 1)
 }
\ No newline at end of file
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaFlagstat.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaFlagstat.scala
index f324001077ac6c9d8b544783aa01c7f8f2dad190..42397f13563055f985063b034a929ef75f30921b 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaFlagstat.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaFlagstat.scala
@@ -21,7 +21,7 @@ import java.io.File
 
 /** Extension for sambemba flagstat  */
 class SambambaFlagstat(val root: Configurable) extends Sambamba {
-  override val defaultThreads = 2
+  override def defaultThreads = 2
 
   @Input(doc = "Bam File")
   var input: File = _
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaIndex.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaIndex.scala
index c9921b7dd6437395eb02688fd0fab3d174eafcb9..061163439cef273c2a28a22c372102892408c25c 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaIndex.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaIndex.scala
@@ -21,7 +21,7 @@ import java.io.File
 
 /** Extension for sambemba index  */
 class SambambaIndex(val root: Configurable) extends Sambamba {
-  override val defaultThreads = 2
+  override def defaultThreads = 2
 
   @Input(doc = "Bam File")
   var input: File = _
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaMarkdup.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaMarkdup.scala
index 5446df1a8ffccad602541c13f7aba5d7c152ee78..bb5128391f937c73dd2f3622f93d294b4a7d98d5 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaMarkdup.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaMarkdup.scala
@@ -21,7 +21,7 @@ import java.io.File
 
 /** Extension for sambemba markdup  */
 class SambambaMarkdup(val root: Configurable) extends Sambamba {
-  override val defaultThreads = 4
+  override def defaultThreads = 4
 
   @Input(doc = "Bam File")
   var input: File = _
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaMerge.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaMerge.scala
index 8b514317a1980106c2d9b63e09d98e929c84904e..bf85f58fe1abc84413ebf125512340a9562fe851 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaMerge.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaMerge.scala
@@ -21,7 +21,7 @@ import java.io.File
 
 /** Extension for sambemba merge  */
 class SambambaMerge(val root: Configurable) extends Sambamba {
-  override val defaultThreads = 4
+  override def defaultThreads = 4
 
   @Input(doc = "Bam File[s]")
   var input: List[File] = Nil
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaView.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaView.scala
index df1be5fff2849745e42031c8a519736b24138d98..91f3b2935488a1fd8f0739ee87fd760084c1eaeb 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaView.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/sambamba/SambambaView.scala
@@ -21,7 +21,7 @@ import java.io.File
 
 /** Extension for sambamba flagstat  */
 class SambambaView(val root: Configurable) extends Sambamba {
-  override val defaultThreads = 2
+  override def defaultThreads = 2
 
   @Input(doc = "Bam File")
   var input: File = _
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/samtools/Samtools.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/samtools/Samtools.scala
index d220be089572d7988f6c12c315620d35b211beea..a00f08718e40634e4da7e9173b4870ead9f8f72e 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/samtools/Samtools.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/samtools/Samtools.scala
@@ -22,6 +22,6 @@ abstract class Samtools extends BiopetCommandLineFunction {
   override def subPath = "samtools" :: super.subPath
   executable = config("exe", default = "samtools")
   override def versionCommand = executable
-  override val versionRegex = """Version: (.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """Version: (.*)""".r
+  override def versionExitcode = List(0, 1)
 }
\ No newline at end of file
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/seqtk/Seqtk.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/seqtk/Seqtk.scala
index c12ca6c5f5f8c822fe0206c189485a2e7957bfc6..dfdf82ae466348aa188d4f59ab8b39916837293d 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/seqtk/Seqtk.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/seqtk/Seqtk.scala
@@ -22,6 +22,6 @@ abstract class Seqtk extends BiopetCommandLineFunction {
   override def subPath = "seqtk" :: super.subPath
   executable = config("exe", default = "seqtk", freeVar = true)
   override def versionCommand = executable
-  override val versionRegex = """Version: (.*)""".r
-  override val versionExitcode = List(0, 1)
+  override def versionRegex = """Version: (.*)""".r
+  override def versionExitcode = List(0, 1)
 }
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/varscan/Varscan.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/varscan/Varscan.scala
index 2889e0581253aa4b98ff140cc8d180230fb52ab1..f3d8585de87216b872bee7235e364df29514710a 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/varscan/Varscan.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/varscan/Varscan.scala
@@ -29,6 +29,6 @@ abstract class Varscan extends BiopetJavaCommandLineFunction {
    * override val versionRegex = """VarScan v(.*)""".r
    */
 
-  override val defaultCoreMemory = 5.0
+  override def defaultCoreMemory = 5.0
 }
 
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/scripts/CoverageStats.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/scripts/CoverageStats.scala
index 37c6cfe938f1f7b89baf6efba87706c40fedf149..838541e2b9e4cefa8753d2b5d0b467ffe8059229 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/scripts/CoverageStats.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/scripts/CoverageStats.scala
@@ -37,7 +37,7 @@ class CoverageStats(val root: Configurable) extends PythonCommandLineFunction wi
   var title: Option[String] = None
   var subTitle: Option[String] = None
 
-  override val defaultCoreMemory = 9.0
+  override def defaultCoreMemory = 9.0
 
   def cmdLine = getPythonCommand +
     required(input) +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BastyGenerateFasta.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BastyGenerateFasta.scala
index 2f8225d883f2822dc971686174cfeed149ba3f40..f599e544f47bc08fec0a2fc647e0200d00e27b8b 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BastyGenerateFasta.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BastyGenerateFasta.scala
@@ -55,7 +55,7 @@ class BastyGenerateFasta(val root: Configurable) extends ToolCommandFuntion with
   var minDepth: Int = config("min_depth", default = 8)
   var outputName: String = _
 
-  override val defaultCoreMemory = 4.0
+  override def defaultCoreMemory = 4.0
 
   override def beforeGraph: Unit = {
     super.beforeGraph
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedToInterval.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedToInterval.scala
index 0a3df85f0d9100370d97e9975de6d918d2ab7363..dd7a12b1ac4eae80597a5fdc13da7d2df082f9ef 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedToInterval.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedToInterval.scala
@@ -38,7 +38,7 @@ class BedToInterval(val root: Configurable) extends ToolCommandFuntion {
   @Output(doc = "Output interval list", required = true)
   var output: File = _
 
-  override val defaultCoreMemory = 1.0
+  override def defaultCoreMemory = 1.0
 
   override def commandLine = super.commandLine + required("-I", input) + required("-b", bamFile) + required("-o", output)
 }
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedtoolsCoverageToCounts.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedtoolsCoverageToCounts.scala
index a55e6270b1812773db8f9617febf3c0316300cae..0e63452c3cc0c0b9efc352d469aefe59358503bf 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedtoolsCoverageToCounts.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BedtoolsCoverageToCounts.scala
@@ -34,7 +34,7 @@ class BedtoolsCoverageToCounts(val root: Configurable) extends ToolCommandFuntio
   @Output(doc = "Output tag library", shortName = "output", required = true)
   var output: File = _
 
-  override val defaultCoreMemory = 3.0
+  override def defaultCoreMemory = 3.0
 
   override def commandLine = super.commandLine +
     required("-I", input) +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BiopetFlagstat.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BiopetFlagstat.scala
index 3844055696a07424fcd6ee5af8d31e41d6331234..66253cd705bd77722cb59712c9c21ebbbd0f087d 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BiopetFlagstat.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/BiopetFlagstat.scala
@@ -36,7 +36,7 @@ class BiopetFlagstat(val root: Configurable) extends ToolCommandFuntion with Sum
   @Output(doc = "summary output file", shortName = "output", required = false)
   var summaryFile: File = _
 
-  override val defaultCoreMemory = 6.0
+  override def defaultCoreMemory = 6.0
 
   override def commandLine = super.commandLine + required("-I", input) + required("-s", summaryFile) + " > " + required(output)
 
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FastqSplitter.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FastqSplitter.scala
index 88fdc9a709624fde4a84e034abcaf8dc2bf140c3..060c4d837dad96d5b99e311494d6493d88c0cd52 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FastqSplitter.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FastqSplitter.scala
@@ -35,7 +35,7 @@ class FastqSplitter(val root: Configurable) extends ToolCommandFuntion {
   @Output(doc = "Output fastq files", shortName = "output", required = true)
   var output: List[File] = Nil
 
-  override val defaultCoreMemory = 4.0
+  override def defaultCoreMemory = 4.0
 
   /** * Generate command to execute */
   override def commandLine = super.commandLine +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FastqSync.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FastqSync.scala
index be422716c8c9d29072dba77e675bac7df02ace4f..ed95d1c20f3d82978f62e6746d11093c5689bb85 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FastqSync.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/FastqSync.scala
@@ -57,7 +57,7 @@ class FastqSync(val root: Configurable) extends ToolCommandFuntion with Summariz
   @Output(doc = "Sync statistics", required = true)
   var outputStats: File = null
 
-  override val defaultCoreMemory = 4.0
+  override def defaultCoreMemory = 4.0
 
   // executed command line
   override def commandLine =
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MergeAlleles.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MergeAlleles.scala
index 3b49ef5e4e07380866333cb669fdb6d924af0716..3b33e800841de3a3496e30044467e60792d25d34 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MergeAlleles.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MergeAlleles.scala
@@ -45,7 +45,7 @@ class MergeAlleles(val root: Configurable) extends ToolCommandFuntion {
 
   var reference: File = config("reference")
 
-  override val defaultCoreMemory = 1.0
+  override def defaultCoreMemory = 1.0
 
   override def beforeGraph {
     super.beforeGraph
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MergeTables.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MergeTables.scala
index 0476cff11b71069bdee435e09cb074d181cb60f5..9b38522b696a4cf1287be7535809fe7f14ac2fa1 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MergeTables.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MergeTables.scala
@@ -32,7 +32,7 @@ class MergeTables(val root: Configurable) extends ToolCommandFuntion {
 
   javaMainClass = getClass.getName
 
-  override val defaultCoreMemory = 6.0
+  override def defaultCoreMemory = 6.0
 
   /** List of input tabular files */
   @Input(doc = "Input table files", required = true)
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MpileupToVcf.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MpileupToVcf.scala
index 8ebe6fc7b212ec35bcfe797d81b84d6595eaec3c..a8d6375c88b5ebb40c89788a07adf1c2eccc80f8 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MpileupToVcf.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/MpileupToVcf.scala
@@ -48,7 +48,7 @@ class MpileupToVcf(val root: Configurable) extends ToolCommandFuntion with Refer
   var sample: String = _
   var reference: String = _
 
-  override val defaultCoreMemory = 3.0
+  override def defaultCoreMemory = 3.0
 
   override def defaults = ConfigUtils.mergeMaps(Map("samtoolsmpileup" -> Map("disable_baq" -> true, "min_map_quality" -> 1)),
     super.defaults)
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/PrefixFastq.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/PrefixFastq.scala
index 101b9f9b4b05cb4879bf00df35501229fd41ad3d..bc2307c2c3aabb01e9b808888f97d034a7dd3307 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/PrefixFastq.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/PrefixFastq.scala
@@ -31,7 +31,7 @@ import scala.collection.JavaConversions._
 class PrefixFastq(val root: Configurable) extends ToolCommandFuntion {
   javaMainClass = getClass.getName
 
-  override val defaultCoreMemory = 1.0
+  override def defaultCoreMemory = 1.0
 
   @Input(doc = "Input fastq", shortName = "I", required = true)
   var inputFastq: File = _
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCountFastq.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCountFastq.scala
index 86c7215a19c9f177f013f3f48a0d77a0e9e0444d..69f2f0e04c2c2d42ec523a5ae756195863951c55 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCountFastq.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCountFastq.scala
@@ -35,7 +35,7 @@ class SageCountFastq(val root: Configurable) extends ToolCommandFuntion {
   @Output(doc = "Output tag library", shortName = "output", required = true)
   var output: File = _
 
-  override val defaultCoreMemory = 3.0
+  override def defaultCoreMemory = 3.0
 
   override def commandLine = super.commandLine +
     required("-I", input) +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCreateLibrary.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCreateLibrary.scala
index dc1cb1e0a32dfe9125ff22ee743d5526572f7d1a..4514d80c45289f902194a46648c56710c43af3d9 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCreateLibrary.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCreateLibrary.scala
@@ -48,7 +48,7 @@ class SageCreateLibrary(val root: Configurable) extends ToolCommandFuntion {
   var tag: String = config("tag", default = "CATG")
   var length: Option[Int] = config("length", default = 17)
 
-  override val defaultCoreMemory = 3.0
+  override def defaultCoreMemory = 3.0
 
   override def commandLine = super.commandLine +
     required("-I", input) +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCreateTagCounts.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCreateTagCounts.scala
index cb95df0c973a37ab91d837e1f6375b45beb258da..8547f9a8b18e8104f121bbf1a6a0caaa17dd956b 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCreateTagCounts.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SageCreateTagCounts.scala
@@ -45,7 +45,7 @@ class SageCreateTagCounts(val root: Configurable) extends ToolCommandFuntion {
   @Output(doc = "AntiSense all count file", shortName = "allantisense", required = true)
   var countAllAntiSense: File = _
 
-  override val defaultCoreMemory = 3.0
+  override def defaultCoreMemory = 3.0
 
   override def commandLine = super.commandLine +
     required("-I", input) +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SeqStat.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SeqStat.scala
index f7c9efea8932da99028c54c89870f3187e160ea1..ab45771d6f3d7e3adfac69cf1d5de7a75b1855e2 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SeqStat.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/SeqStat.scala
@@ -47,7 +47,7 @@ class SeqStat(val root: Configurable) extends ToolCommandFuntion with Summarizab
   @Output(doc = "Output JSON", shortName = "output", required = true)
   var output: File = null
 
-  override val defaultCoreMemory = 2.5
+  override def defaultCoreMemory = 2.5
 
   override def commandLine = super.commandLine + required("-i", input) + " > " + required(output)
 
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfFilter.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfFilter.scala
index 1fc34adcb9877d3e2fd93bb14c0b6108435d0053..a5cd10366720d02153bfa971c1db131f5938c4d7 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfFilter.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfFilter.scala
@@ -41,7 +41,7 @@ class VcfFilter(val root: Configurable) extends ToolCommandFuntion {
   var minSamplesPass: Option[Int] = config("min_samples_pass")
   var filterRefCalls: Boolean = config("filter_ref_calls", default = false)
 
-  override val defaultCoreMemory = 1.0
+  override def defaultCoreMemory = 1.0
 
   override def commandLine = super.commandLine +
     required("-I", inputVcf) +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfStats.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfStats.scala
index 77ae5c23cb1e252861430739458cc4af6d6eebb4..dd69bc6f4750c93811cd163a9ee5298d49089265 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfStats.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfStats.scala
@@ -50,8 +50,8 @@ class VcfStats(val root: Configurable) extends ToolCommandFuntion with Summariza
   @Output
   protected var genotypeStats: File = null
 
-  override val defaultCoreMemory = 3.0
-  override val defaultThreads = 3
+  override def defaultCoreMemory = 3.0
+  override def defaultThreads = 3
 
   protected var outputDir: File = _
 
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VepNormalizer.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VepNormalizer.scala
index 3b97e6702c85c6fcce3714ae1d80c77180b27039..91bad46c5247b754b06d9b1967dabcba44f3a431 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VepNormalizer.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VepNormalizer.scala
@@ -50,7 +50,7 @@ class VepNormalizer(val root: Configurable) extends ToolCommandFuntion {
   var mode: String = config("mode", default = "explode")
   var doNotRemove: Boolean = config("donotremove", default = false)
 
-  override val defaultCoreMemory = 1.0
+  override def defaultCoreMemory = 1.0
 
   override def commandLine = super.commandLine +
     required("-I", inputVCF) +
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/utils/ConfigUtils.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/utils/ConfigUtils.scala
index 24018f6d3dec182b3b3b304e724dff6bf2095f85..3047a5efe1cb9182aae95a2de74646739d364b91 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/utils/ConfigUtils.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/utils/ConfigUtils.scala
@@ -170,6 +170,7 @@ object ConfigUtils extends Logging {
       case n: Short     => Json.jNumberOrString(n)
       case n: Float     => Json.jNumberOrString(n)
       case n: Byte      => Json.jNumberOrString(n)
+      case null         => Json.jNull
       case _            => jString(any.toString)
     }
   }
diff --git a/public/flexiprep/src/main/resources/nl/lumc/sasc/biopet/pipelines/flexiprep/flexiprepBaseSummary.ssp b/public/flexiprep/src/main/resources/nl/lumc/sasc/biopet/pipelines/flexiprep/flexiprepBaseSummary.ssp
index b0bc4784d7720596be11b4c4dd8a889fa8e88300..23592e9d2fa8fa72f8a28c2daa6a5c8cb318549e 100644
--- a/public/flexiprep/src/main/resources/nl/lumc/sasc/biopet/pipelines/flexiprep/flexiprepBaseSummary.ssp
+++ b/public/flexiprep/src/main/resources/nl/lumc/sasc/biopet/pipelines/flexiprep/flexiprepBaseSummary.ssp
@@ -128,8 +128,8 @@
                     #for (read <- reads)
                         #if (read == "R2") </tr><tr> #end
                         #{
-                            val beforeTotal = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "seqstat_" + read, "bases", "num_total").getOrElse(0).asInstanceOf[Long]
-                            val afterTotal = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "seqstat_" + read + "_after", "bases", "num_total").getOrElse(0).asInstanceOf[Long]
+                            val beforeTotal = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "seqstat_" + read, "bases", "num_total").getOrElse(0).toString.toLong
+                            val afterTotal = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "seqstat_" + read + "_after", "bases", "num_total").getOrElse(0).toString.toLong
                         }#
                         <td>${read}</td>
                         <td>${beforeTotal}</td>
diff --git a/public/flexiprep/src/main/resources/nl/lumc/sasc/biopet/pipelines/flexiprep/flexiprepReadSummary.ssp b/public/flexiprep/src/main/resources/nl/lumc/sasc/biopet/pipelines/flexiprep/flexiprepReadSummary.ssp
index f0b9ee75d46045ba1a99e9d38b4fcfd01462f59c..1ec4e7c61d35fbc33fddbfdbd759d71ae1dc38a2 100644
--- a/public/flexiprep/src/main/resources/nl/lumc/sasc/biopet/pipelines/flexiprep/flexiprepReadSummary.ssp
+++ b/public/flexiprep/src/main/resources/nl/lumc/sasc/biopet/pipelines/flexiprep/flexiprepReadSummary.ssp
@@ -134,9 +134,9 @@
                         #{
                             val beforeTotal = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "seqstat_" + read, "reads", "num_total")
                             val afterTotal = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "seqstat_" + read + "_after", "reads", "num_total")
-                            val clippingDiscardedToShort = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "clipping_" + read, "num_reads_discarded_too_short").getOrElse(0).asInstanceOf[Long]
-                            val clippingDiscardedToLong = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "clipping_" + read, "num_reads_discarded_too_long").getOrElse(0).asInstanceOf[Long]
-                            val trimmingDiscarded = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "trimming", "num_reads_discarded_" + read).getOrElse(0).asInstanceOf[Long]
+                            val clippingDiscardedToShort = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "clipping_" + read, "num_reads_discarded_too_short").getOrElse(0).toString.toLong
+                            val clippingDiscardedToLong = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "clipping_" + read, "num_reads_discarded_too_long").getOrElse(0).toString.toLong
+                            val trimmingDiscarded = summary.getLibraryValue(sample, libId, "flexiprep", "stats", "trimming", "num_reads_discarded_" + read).getOrElse(0).toString.toLong
                         }#
                         <td>${read}</td>
                         <td>${beforeTotal}</td>
diff --git a/public/mapping/src/main/scala/nl/lumc/sasc/biopet/pipelines/mapping/Mapping.scala b/public/mapping/src/main/scala/nl/lumc/sasc/biopet/pipelines/mapping/Mapping.scala
index 98b3aa0fc4791432376053e52cab3f4de7578272..fcc89a029564c617df50314ac64ac7a204fc6eb7 100644
--- a/public/mapping/src/main/scala/nl/lumc/sasc/biopet/pipelines/mapping/Mapping.scala
+++ b/public/mapping/src/main/scala/nl/lumc/sasc/biopet/pipelines/mapping/Mapping.scala
@@ -18,6 +18,7 @@ package nl.lumc.sasc.biopet.pipelines.mapping
 import java.util.Date
 import java.io.File
 import nl.lumc.sasc.biopet.pipelines.mapping.scripts.TophatRecondition
+import nl.lumc.sasc.biopet.utils.ConfigUtils
 
 import scala.math._
 
@@ -98,6 +99,14 @@ class Mapping(val root: Configurable) extends QScript with SummaryQScript with S
   /** location of summary file */
   def summaryFile = new File(outputDir, sampleId.getOrElse("x") + "-" + libId.getOrElse("x") + ".summary.json")
 
+  override def defaults = ConfigUtils.mergeMaps(
+    Map(
+      "gsnap" -> Map(
+        "batch" -> 4,
+        "format" -> "sam"
+      )
+    ), super.defaults)
+
   /** File to add to the summary */
   def summaryFiles: Map[String, File] = Map("output_bamfile" -> finalBamFile, "input_R1" -> input_R1,
     "reference" -> referenceFasta()) ++