Skoro manager, to trzeba do niego napisać klasę. A najlepiej klasę managera i hierarchię klas stanów, żeby dało się do nich wszystkich narysować ładny diagram UML. Ach, no i ten manager powinien być singletonem. A najlepiej jakimś szablonem parametryzowanym klasą bazową stanu, żeby było ogólnie i uniwersalnie. Do tworzenia obiektów stanów natomiast przyda się wzorzec projektowy fabryki, żeby można było łatwo dodawać nowe stany.
Żartowałem :) Tak naprawdę to popieram przedmówcę.