Started refactoring the app to use State Pattern.