public static function boot(App $slim)
    {
        // set Slim application for syntactic-sugar proxies
        SlimSugar::$slim = $slim;

        // create a new Manager
        $manager = new Manager();

        // Add proxies that use the Slim instance
        $aliases = ['Config', 'Route', 'Router', 'ForumEnv', 'ForumSettings', 'User', 'Lang', 'DB'];
        static::addInstances($aliases, $manager, $slim);

        // Add special-case Slim container instance
        $aliases = ['Container'];
        static::addInstances($aliases, $manager, $slim->getContainer());

        // Add services that are resolved out of the Slim container
        static::addServices($manager, $slim);

        return $manager;
    }