This library was inspired by Java Poet, as a library that provides a simple language model for generating Go code.
The model it provides is much simpler than the model exposed by go/ast and go/types, both in its
expressive power and in its usability. It cannot model implementation code, which is handled in the
library with special support for formatting (a la fmt.Printf) references to symbols and types. This
support allows it to provide automatic management of import statements: so you just build the model of
the program to generate, and it will emit the program with all of the necessary imports and properly
qualified references in the code.