[Core] Support cyclical dependencies in Wiring spec and generated Golang code
The current Wiring spec implementation will recurse infinitely if there are cyclical node dependencies. Similarly, the golang DI graph would recurse infinitely if there were cyclical dependencies.
This is not a fundamental limitation. However, to support cyclical node dependencies might entail tweaking the way IR nodes are constructed, to have constructor injection as well as setter-based injection.
This will be a major change.