options struct replaced with functional options, go vet & golint