/**
  * @param array $commands
  *
  * @return array
  */
 private function sortCommands(array $commands)
 {
     $namespacedCommands = array();
     foreach ($commands as $name => $command) {
         $key = $this->application->extractNamespace($name, 1);
         if (!$key) {
             $key = '_global';
         }
         $namespacedCommands[$key][$name] = $command;
     }
     ksort($namespacedCommands);
     foreach ($namespacedCommands as &$commands) {
         ksort($commands);
     }
     return $namespacedCommands;
 }