Project to learn and try some Design Patterns