 
   readDev: (devpath, cb) ->
     filePath = @devMapping[devpath]
+
+    return cb new Error "No such dev file #{ devpath }" unless filePath
+
     fs.readFile filePath, (err, data) =>
       return cb err if err
       @getCompiler(filePath) data.toString(), (err, code) ->

  pileUp: (cb) ->
    # TODO: pile as cb param
    @_pileUpFiles (err, code) =>
      @pile = @minify  @_pileObjecs() + code
      @_computeHash()
      cb?()



  _computeHash: ->
    sum = crypto.createHash('sha1')
    sum.update @rawPile
    @pileHash = sum.digest('hex')


