BMaximus, you have a high sense of self-integrity to question your own design so well. The skill (art) of organizing a project is unique to each person. What I have found is that regardless of OO vs. structured approaches the program is a state machine.

Example: