Game class with some crucial components (GraphicsDevice and ContentManager) for getting stuff drawn to the screen. These components are only initialized after you construct your Game instance and call .Run() on it, making it 'live'.Game like anything else. This is mainly because it'll let me use proper async/await, which I currently can't do. I have a mix of UI services that rely on the Game components (GraphicsDevice etc.) and 'pure' backend services.