Index: code/branches/core5/src/modules/gamestates/GSGraphics.cc
===================================================================
--- code/branches/core5/src/modules/gamestates/GSGraphics.cc	(revision 5826)
+++ code/branches/core5/src/modules/gamestates/GSGraphics.cc	(revision 5829)
@@ -109,7 +109,5 @@
 
         // add console command to toggle GUI
-        FunctorMember<GSGraphics>* functor = createFunctor(&GSGraphics::toggleGUI);
-        functor->setObject(this);
-        this->ccToggleGUI_ = createConsoleCommand(functor, "toggleGUI");
+        this->ccToggleGUI_ = createConsoleCommand(createFunctor(&GSGraphics::toggleGUI, this), "toggleGUI");
         CommandExecutor::addConsoleCommandShortcut(this->ccToggleGUI_);
 
Index: code/branches/core5/src/modules/gamestates/GSIOConsole.cc
===================================================================
--- code/branches/core5/src/modules/gamestates/GSIOConsole.cc	(revision 5826)
+++ code/branches/core5/src/modules/gamestates/GSIOConsole.cc	(revision 5829)
@@ -50,7 +50,5 @@
     {
         {
-            FunctorMember<GSIOConsole>* functor = createFunctor(&GSIOConsole::loadMenu);
-            functor->setObject(this);
-            this->ccLoadMenu_ = createConsoleCommand(functor, "loadMenu");
+            this->ccLoadMenu_ = createConsoleCommand(createFunctor(&GSIOConsole::loadMenu, this), "loadMenu");
             CommandExecutor::addConsoleCommandShortcut(this->ccLoadMenu_);
         }
Index: code/branches/core5/src/modules/gamestates/GSLevel.cc
===================================================================
--- code/branches/core5/src/modules/gamestates/GSLevel.cc	(revision 5826)
+++ code/branches/core5/src/modules/gamestates/GSLevel.cc	(revision 5829)
@@ -116,11 +116,7 @@
         {
             // keybind console command
-            FunctorMember<GSLevel>* functor1 = createFunctor(&GSLevel::keybind);
-            functor1->setObject(this);
-            ccKeybind_ = createConsoleCommand(functor1, "keybind");
+            ccKeybind_ = createConsoleCommand(createFunctor(&GSLevel::keybind, this), "keybind");
             CommandExecutor::addConsoleCommandShortcut(ccKeybind_);
-            FunctorMember<GSLevel>* functor2 = createFunctor(&GSLevel::tkeybind);
-            functor2->setObject(this);
-            ccTkeybind_ = createConsoleCommand(functor2, "tkeybind");
+            ccTkeybind_ = createConsoleCommand(createFunctor(&GSLevel::tkeybind, this), "tkeybind");
             CommandExecutor::addConsoleCommandShortcut(ccTkeybind_);
             // set our console command as callback for the key detector
Index: code/branches/core5/src/modules/gamestates/GSMainMenu.cc
===================================================================
--- code/branches/core5/src/modules/gamestates/GSMainMenu.cc	(revision 5826)
+++ code/branches/core5/src/modules/gamestates/GSMainMenu.cc	(revision 5829)
@@ -75,34 +75,14 @@
         GraphicsManager::getInstance().setCamera(this->camera_);
 
-        {
-            FunctorMember<GSMainMenu>* functor = createFunctor(&GSMainMenu::startStandalone);
-            functor->setObject(this);
-            this->ccStartStandalone_ = createConsoleCommand(functor, "startGame");
-            CommandExecutor::addConsoleCommandShortcut(this->ccStartStandalone_);
-        }
-        {
-            FunctorMember<GSMainMenu>* functor = createFunctor(&GSMainMenu::startServer);
-            functor->setObject(this);
-            this->ccStartServer_ = createConsoleCommand(functor, "startServer");
-            CommandExecutor::addConsoleCommandShortcut(this->ccStartServer_);
-        }
-        {
-            FunctorMember<GSMainMenu>* functor = createFunctor(&GSMainMenu::startClient);
-            functor->setObject(this);
-            this->ccStartClient_ = createConsoleCommand(functor, "startClient");
-            CommandExecutor::addConsoleCommandShortcut(this->ccStartClient_);
-        }
-        {
-            FunctorMember<GSMainMenu>* functor = createFunctor(&GSMainMenu::startDedicated);
-            functor->setObject(this);
-            this->ccStartDedicated_ = createConsoleCommand(functor, "startDedicated");
-            CommandExecutor::addConsoleCommandShortcut(this->ccStartDedicated_);
-        }
-        {
-            FunctorMember<GSMainMenu>* functor = createFunctor(&GSMainMenu::startMainMenu);
-            functor->setObject(this);
-            this->ccStartMainMenu_ = createConsoleCommand(functor, "startMainMenu");
-            CommandExecutor::addConsoleCommandShortcut(this->ccStartMainMenu_);
-        }
+        this->ccStartStandalone_ = createConsoleCommand(createFunctor(&GSMainMenu::startStandalone, this), "startGame");
+        CommandExecutor::addConsoleCommandShortcut(this->ccStartStandalone_);
+        this->ccStartServer_ = createConsoleCommand(createFunctor(&GSMainMenu::startServer, this), "startServer");
+        CommandExecutor::addConsoleCommandShortcut(this->ccStartServer_);
+        this->ccStartClient_ = createConsoleCommand(createFunctor(&GSMainMenu::startClient, this), "startClient");
+        CommandExecutor::addConsoleCommandShortcut(this->ccStartClient_);
+        this->ccStartDedicated_ = createConsoleCommand(createFunctor(&GSMainMenu::startDedicated, this), "startDedicated");
+        CommandExecutor::addConsoleCommandShortcut(this->ccStartDedicated_);
+        this->ccStartMainMenu_ = createConsoleCommand(createFunctor(&GSMainMenu::startMainMenu, this), "startMainMenu");
+        CommandExecutor::addConsoleCommandShortcut(this->ccStartMainMenu_);
 
         InputManager::getInstance().enterState("mainMenu");
Index: code/branches/core5/src/modules/gamestates/GSRoot.cc
===================================================================
--- code/branches/core5/src/modules/gamestates/GSRoot.cc	(revision 5826)
+++ code/branches/core5/src/modules/gamestates/GSRoot.cc	(revision 5829)
@@ -63,19 +63,11 @@
         this->timeFactor_ = 1.0f;
 
-        {
-            // time factor console command
-            FunctorMember<GSRoot>* functor = createFunctor(&GSRoot::setTimeFactor);
-            functor->setObject(this);
-            this->ccSetTimeFactor_ = createConsoleCommand(functor, "setTimeFactor");
-            CommandExecutor::addConsoleCommandShortcut(this->ccSetTimeFactor_).accessLevel(AccessLevel::Offline).defaultValue(0, 1.0);
-        }
+        // time factor console command
+        this->ccSetTimeFactor_ = createConsoleCommand(createFunctor(&GSRoot::setTimeFactor, this), "setTimeFactor");
+        CommandExecutor::addConsoleCommandShortcut(this->ccSetTimeFactor_).accessLevel(AccessLevel::Offline).defaultValue(0, 1.0);
 
-        {
-            // time factor console command
-            FunctorMember<GSRoot>* functor = createFunctor(&GSRoot::pause);
-            functor->setObject(this);
-            this->ccPause_ = createConsoleCommand(functor, "pause");
-            CommandExecutor::addConsoleCommandShortcut(this->ccPause_).accessLevel(AccessLevel::Offline);
-        }
+        // time factor console command
+        this->ccPause_ = createConsoleCommand(createFunctor(&GSRoot::pause, this), "pause");
+        CommandExecutor::addConsoleCommandShortcut(this->ccPause_).accessLevel(AccessLevel::Offline);
 
         // create the LevelManager
