     delete cache[name] if cache[name]
     delete queue[name] if queue[name]
     
+  # Provide plugin functionality
+  root.molo.plugins = {}
+    
   # Shorthand function to load script files
   root.molo.main = (dependencies) ->
     dependencies = [dependencies] if typeof dependencies is 'string'

      maxDeps = queue[q].require.length
      curDeps = 0

      (curDeps++ if cache[d]) for d in queue[q].require

      # Reload module and delete item from queue
      if curDeps is maxDeps
        modName = q

      if cache.hasOwnProperty(i)
        cacheDeps.push cache[i]
      else
        # Plugin functionality
        pluginName = i.split('!')[1]
        
        scriptLoader = root.molo.scriptLoader
        
        # If a script is defined as 'my/script!' it will try to resolve the 
        # dependency on the same page
        scriptLoader = false if pluginName is ''
        
        if scriptLoader
          if isJavaScriptFile(root.molo.paths[name])
            # If the path is complete (e.g. 'js/lib/mymodule.js') take that as a path
            scriptPath = root.molo.paths[name]
