An intro to Golang interfaces