 
     modulename = locations[typename]
 
+    if _.isArray(modulename)
+      [modulename, submodulename] = modulename
+    else
+      submodulename = null
+
     if not mod_cache[modulename]?
       mod = require(modulename)
 

    "locations": locations
    "index": index
    "Collections": Collections
    "Config" : Config
  }

      else
          throw Error("improperly implemented collection: #{modulename}")

    mod = mod_cache[modulename]

    if submodulename?
      mod = mod[submodulename]

    return mod.Collection

  Collections.register = (name, collection) ->
    collection_overrides[name] = collection
