Interfaces in Go
// Go Interfaces
Interfaces in Go are used to logically group code that have similar behavior, not
to reduce code.
In Go, every type implements at least zero methods, which means each type implements
a special zero interface{}. This is useful when you do not know what type a var
is.