public ExitState(TheApplication app) : base(app)
 {
     Name = "Exit";
 }
 public MainScreenState(TheApplication app) : base(app)
 {
     Name = "Main Screen";
 }
 public StartState(TheApplication app) : base(app)
 {
     Name = "Start";
 }
 public State(TheApplication app)
 {
     Application = app;
 }
 public GoodbyeScreenState(TheApplication app) : base(app)
 {
     Name = "Goodbye Screen";
 }
 public HelloScreenState(TheApplication app) : base(app)
 {
     Name = "Hello Screen";
 }
        static void Main(string[] args)
        {
            TheApplication app = new TheApplication();

            app.Run();
        }