I not infrequently just have a non-optional var closure. Default value is a no-op, and someone else can set it to something of their own. Super lightweight, informal delegation.