/// <summary>
        /// Allows the game to perform any initialization it needs to before starting to run.
        /// This is where it can query for any required services and load any non-graphic
        /// related content.  Calling base.Initialize will enumerate through any components
        /// and initialize them as well.
        /// </summary>
        protected override void Initialize()
        {
            // Window initilization
            Window.AllowUserResizing = false;
            Window.Title             = "S******d";

            // Device manager initilization
            deviceManager.IsFullScreen = false;
            deviceManager.PreferredBackBufferHeight = 768;
            deviceManager.PreferredBackBufferWidth  = 1024;
            deviceManager.ApplyChanges();

            // Game initilization
            Configuration.Init(this.Content);
            GameCursor.Init();
            GameCursor.CustomMouse = true;
            Deck.Init();
            Button.Init(GraphicsDevice);
            TextField.Init(GraphicsDevice);
            PlayerPositions.Init(GraphicsDevice);

            // Screen initilization
            Screens.ScreenManager.AddScreen(new Menu(GraphicsDevice));
            Screens.ScreenManager.AddScreen(new GameBoard(GraphicsDevice));
            Screens.ScreenManager.AddScreen(new SetupLocal(GraphicsDevice));
            Screens.ScreenManager.AddScreen(new SetupMultiplayer(GraphicsDevice));
            Screens.ScreenManager.GotoScreen("menu");

            this.TargetElapsedTime = TimeSpan.FromSeconds(1.0f / FPS);

            base.Initialize();
        }