If there are any functions or objects defined in the root class they will be given piority over the index function when resolving urls. For instance if a root object had an function named foo defined in it, the url hostname/foo would be created by the returned result of that function. This is the case even if the index function was capable of accepting the agument foo. If foo was an object instead of a function the url hostname/foo would be resolved by the index method of the foo object. now consider the url hostname/foo/bar. This could be handled by in several ways if a object named foo is defined the page returned will be created by the function or object bar defined in foo. If foo is an function defined in the root object then bar will be a parameter passed to foo. There is no limit to the depth of the tree created in this way.