Decorator pattern

Build your own car or coffee or whatever.

Uses recursion

If it is over ten calls it is almost never worth it

Key properties
Multiple decoratoes

Decorators need the same super type as the oject they decorate

Everything is happening at runtime