private function setup()
 {
     $this->environment->addService("authentication", "AuthenticationServices");
     $this->environment->addService("session", "SessionServices");
     $this->environment->addService("configuration", "ConfigurationServices");
     $this->environment->addService("filesystem", "FilesystemServices");
     $this->environment->addService("events", "EventServices");
     $this->environment->addService("permissions", "PermissionServices");
     if (Logging::isDebug()) {
         $this->environment->addService("debug", "DebugServices");
         $this->environment->response()->addListener($this);
     }
     UserEvent::register($this->environment->events());
     $this->environment->permissions()->registerPermission("change_password");
     $this->environment->plugins()->setup();
 }