/**
  * Application constructor.
  */
 public function __construct()
 {
     parent::__construct(self::NAME, self::VERSION);
     $configuration = new Config();
     // Not configured lets configure it
     if (!$configuration->isConfigured()) {
         $this->add(new ConfigureCommand());
         $this->setDefaultCommand('configure');
     }
     // all ready and good to go
     if ($configuration->isConfigured()) {
         $this->addCommands($this->getCommands());
     }
     $this->run();
 }