El controlador que tu refieres es el FRONT CONTROLLER y basicamente lo que hace es coje la URL, la desarma en segmentos: modulo / controlador / accion / parametros y llama a los controllers en particular, ejecutando la accion en particular y si no esta especificaa, el metodo index()
Deberias buscar ejemplos de frameworks o mirar como funciona CI u otro
http://anantgarg.com/2009/03/13/writ...mework-part-1/