A simple state machine using C++