Adds pre-commit hook, hook config script, and a README

The pre-commit hook will automatically gofmt code in place, warning you
about any changes. It will also fail to commit if either golint or go
vet fails.
Adds benchmarks for Put/Get, WriteStream/ReadStream, List, and Delete

Also fixes an open fd leak in the filesystem driver that these
benchmarks revealed.
Multi-go test
Adds auth package with token auth backend

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
Refactor auth stringSet into common.StringSet

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
Merge pull request #857 from BrianBland/ng-benchmarks

Adds benchmarks for Put/Get, WriteStream/ReadStream, List, and Delete
Merge pull request #856 from BrianBland/ng-hooks

Adds pre-commit hook, hook config script, and relevant README
Address auth package comments from stevvooe

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
Fixes Dockerfile "go get" command

Now pulls down all dependencies for registry sub-packages
Merge pull request #860 from BrianBland/next-generation

Fixes Dockerfile "go get" command
Fixes typo on auth/token VerifyOptions field

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
Merge pull request #859 from jlhawn/ng_auth_package

Adds auth package with token auth backend
Genericizes the yaml+environment versioned configuration parser

Registry configuration parsing uses the new parser with a single version
declaration and an environment prefix of "REGISTRY"
Refactor token verification to support x5c header

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
Refactored out usage of strconv.Quote()

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
Fixes filesystem storage driver List semantics for nonexistent directory

Now returns a PathNotFoundError
Erm
Allows storagedriver parameter values to be of type interface{}

This enables use of nil, booleans, numeric types, and even complex structures for parameter values, assuming they can be parsed from yaml.
Merge pull request #858 from docker/CI

Multi-go test
Merge pull request #861 from BrianBland/ng-configuration

Genericizes the yaml+environment versioned configuration parser