Allow custom groups to be specified in the Gomfile.

Greetings! I have a use case that would require using various groups in my Gomfile. The logic for environments and groups is very similar, but I need more than three options. For example, depending on os/go versions, Travis builds seem to fail if we try to fetch tools from the new urls (golang.org/x), but we don't want to overload "test" and "development" to specify these build differences.

This PR suggests a solution using custom group names in addition to the three environments. This would allow many new combinations of Goms by specifying one or more groups in the install command. e.g.

```
$ gom install -test -groups=test_golang_org
```

```ruby
# fetches from golang.org
group :test_golang_org do
  gom 'golang.org/x/tools/cmd/vet'
  gom 'golang.org/x/tools/cmd/cover'
end

# fetches from code.google.com
group :test_google_com do
  gom 'code.google.com/p/go.tools/cmd/vet'
  gom 'code.google.com/p/go.tools/cmd/cover'
end

group :test do
  gom 'gopkg.in/check.v1'
  gom 'github.com/golang/lint/golint'
  gom 'github.com/onsi/ginkgo/ginkgo'
  gom 'github.com/onsi/gomega'
end
```

Please let me know what you think. Thanks!