/**
  * load a Controller 
  * @param  Request $request the client request
  * @return mixed a Controller
  */
 static function load()
 {
     $request = Request::getInstance();
     $fileName = Config::controllerDIR() . DS . $request->controller . 'Controller.php';
     if (!file_exists($fileName)) {
         throw new \Exception("Controller {$request->controller} does not exist", 101);
     }
     require $fileName;
     $name = $request->namespace . '\\Controller\\' . $request->controller . 'Controller';
     return new $name();
 }