public App()
        {
            _timer = new Stopwatch();

            _graphicsBase = new GraphicsBaseFactory().Create();
            _graphicsBase.OnExit += new EventHandler(ExitHandler);
            _graphicsBase.OnSizeChanged += SizeChangedHandler;
            _graphicsBase.OnKeyPressed += KeyPressHandler;

            _appStates = new AppStateFactory().CreateAppStates(_graphicsBase.ScreenBounds);

            _appStateRenderers = new AppStateRendererFactory().Create().ToDictionary(componentRenderer => componentRenderer.ComponentType);
            _gestureRecognizer = new SkeletonUpdaterFactory().Create();
        }
        public App()
        {
            _timer = new Stopwatch();

            _graphicsBase                = new GraphicsBaseFactory().Create();
            _graphicsBase.OnExit        += new EventHandler(ExitHandler);
            _graphicsBase.OnSizeChanged += SizeChangedHandler;
            _graphicsBase.OnKeyPressed  += KeyPressHandler;

            _appStates = new AppStateFactory().CreateAppStates(_graphicsBase.ScreenBounds);

            _appStateRenderers = new AppStateRendererFactory().Create().ToDictionary(componentRenderer => componentRenderer.ComponentType);
            _gestureRecognizer = new SkeletonUpdaterFactory().Create();
        }