blog - made decorators into a service and DSL