Pattern Hatching: Design Patterns Applied