vole/vole — pull request #106 by drewwells (2014-01-07 03:28:30+00:00)
Title: Refactor

Vole can run under the default GOPATH. [New install instructions](https://github.com/drewwells/vole/commit/0b1b1532b2a93f27bef18972598a73fb9b29aeda#diff-6a3371457528722a734f3c51d9238c13)

Installation: `go get github.com/vole/vole`
Running: `cd $GOPATH/src/github.com/vole/vole; go run vole.go`.

I moved the few supporting files to the base directory for shorter import paths. I reviewed a lot of Go projects and this seems to be the way people are organizing files.

All the third party libs are deleted from the main repo. The import path is points to the vole forks. We retain fine grained versioning support while also fully utilizing the little dependency management Go gives us. I toiled with this decision a bit, and it has some pros and cons.

Pros:
- Fine grained control of versioning
- Removal of duplication (updating fork and updating code copied into project)
- Uses Go as much as possible for dependency management and fixes its shortcomings
- Upgrades are very clean, as the dependencies will by their own Git repos
- No messing with git submodules
- Most of the code in Gruntfile.js can be removed

Cons:
- More difficult for contributors to update dependencies (need some git-fu to update third party libs via forks)
- Go isn't aware of static/, so we still need Grunt or Make to put static in a directory relative to bin
- Gruntfile.js is broken. I can fix this if we like these changes.

This resolves #103