This is something seldom attempted, but I congratulate you. Go is one of a few languages that really is batteries-included. Just about anything you could need is included in the stdlib.
Some of the above will never be in Go due to how the community and language designers are philosophically against them.
It's been a while since I played with the furry thing but is that even possible in Golang?
In Go you can naturally do it, by using the manual constructor approach, however there is no magic auto wiring like you can do with attributes and compiler plugins, plus standard libraries infrastructure for locating services, from those three ecosystems above.
However Go doesn't like magic, thus that isn't something that will ever happen on the standard library, like on Python, Java, .NET.
And if one goes back 20 years, constructor based injection was the norm, the magic only came later thanks to Aspect Oriented Programming, yet another tool that Go will never adopt.