   flatted = []
   args.forEach (item) ->
     if item
-      if typeof item == 'function'
+      if typeof item is 'function'
         flatted.push(item)
       else
         args.forEach (fn) ->
-          if typeof fn == 'function'
+          if typeof fn is 'function'
             flatted.push(fn)
   flatted
 

  ###
  constructor: (fn) ->
    @_state = 'pending'
    fn.call(this, this) if typeof fn == 'function'

  ###
  Pass in functions or arrays of functions to be executed when the

  Add progress callbacks to be fired when using notify()
  ###
  progress: (args...) =>
    return this if args.length is 0 or @_state isnt 'pending'
    functions = flatten(args)
    @_progressCallbacks or= []
    @_progressCallbacks.push(functions...)
