By allowing multiple class types and/or services attached to a single initializer at once, will definitely require some changes in initializers' internal data structure, that you also mentioned in some of the following comments. But I don't see some good reasons in favor of such ability, because, in my opinion, one initializer should be responsible for only one object. Of course, there could be multiple initializers for some object. Having that said, I would have still remained with `string|null`.