Delegator factories seem to suffer from the same issue? Speaking of them, I plan to withdraw that capability of targeting service besides class type (`$classOrServiceName` -> `$className`), because that should be responsibility of delegator factories themselves. 

And what about this kind of structure:
```php
'initializers' => array(
    array(
        'initializer' => function($instance, $sm) {
            $instance->setFoo($sm->get('FooService'));
        },
        'class' => 'My\Service\FooAwareInterface'
    ),
    'My/OrdinaryInitializer'
)
```

This structure would also tackle that `if (is_array($initializer) && is_string($classOrServiceName = key($initializer)))` heavy check as that second part will be needless.