Inheritance replacement in Go