* Simplifying documentation for getting started: Removed outdated information about install Golang on different platforms and instead included a link to the official Golang website which has more up to date information. Instructions for installing docker-compose have also been added.
* Added documentation to all exported functions and structs.
* Unexported some structures and functions that were needlessly exported.
* Adding golang CI default configuration which can be useful while developing and may be turned on later in the CI.
* Moving build process in CI to xenial.
* Reducing line size. in some files and shadowing in some test cases.
* Moving from govendor to dep.
* Making the pull request template more friendly.
* Fixing akward space in PR template.
* goimports run on whole project using ` goimports -w $(find . -type f -name '*.go' -not -path "./vendor/*" -not -path "./gen-go/*")`
source of command: https://gist.github.com/bgentry/fd1ffef7dbde01857f66