added a simple state machine like class that will handle our transitions etc