Day 3: The Command and Visitor Patterns