private static function createApplication(IOInterface $io, string $config) : Application
    {
        $app = new Application();
        $app->setAutoExit(false);
        $app->setConfigFile($config);
        $app->setProxyIO($io);

        $install = new Install();
        $install->setIO($app->getIO());
        $app->add($install);

        $configuration = new Configuration();
        $configuration->setIO($app->getIO());
        $app->add($configuration);
        return $app;
    }