diff --git a/README.md b/README.md
index 86298ca..891a930 100644
--- a/README.md
+++ b/README.md
@@ -65,8 +65,9 @@
 
 ## Install
 
-In the future we will provide binary packages. Right now, the easiest
-way to get started is:
+[Binary packages](https://github.com/Masterminds/glide/releases) are available for Mac and Linux.
+
+To build from source you can:
 
 1. Clone this repository and change directory into it
 2. Run `make bootstrap`
diff --git a/cmd/rebuild.go b/cmd/rebuild.go
index 838e0e5..1886cbd 100644
--- a/cmd/rebuild.go
+++ b/cmd/rebuild.go
@@ -9,7 +9,7 @@
 	//"fmt"
 )
 
-// Rebuild run 'go build' in a directory.
+// Rebuild runs 'go build' in a directory.
 //
 // Params:
 // 	- conf: the *Config.
diff --git a/cmd/status.go b/cmd/status.go
index dedb90d..de4f521 100644
--- a/cmd/status.go
+++ b/cmd/status.go
@@ -1,11 +1,12 @@
 package cmd
 
 import (
-	"github.com/Masterminds/cookoo"
 	"fmt"
+	"github.com/Masterminds/cookoo"
 	"os"
 )
 
+// Status is a command that prints the status of the glide and expected gopath.
 func Status(c cookoo.Context, p *cookoo.Params) (interface{}, cookoo.Interrupt) {
 	if os.Getenv("ALREADY_GLIDING") == "1" {
 		fmt.Println("glide in: true")
diff --git a/glide.go b/glide.go
index 7e0f849..322c619 100644
--- a/glide.go
+++ b/glide.go
@@ -1,3 +1,35 @@
+// Glide is a command line utility that manages Go project dependencies and
+// your GOPATH.
+//
+// Dependencies are managed via a glide.yaml in the root of a project. The yaml
+// file lets you specify projects, versions (tags, branches, or references),
+// and even alias one location in as other one. Aliasing is useful when supporting
+// forks without needing to rewrite the imports in a codebase.
+//
+// A glide.yaml file looks like:
+//
+// 		package: github.com/Masterminds/glide
+// 		imports:
+//			- package: github.com/Masterminds/cookoo
+//			  vcs: git
+//			  ref: 1.1.0
+//			  subpackages: **
+//			- package: github.com/kylelemons/go-gypsy
+//			  subpackages: yaml
+//
+// Glide puts dependencies in a _vendor directory. Go utilities require this to
+// be in your GOPATH. Glide makes this easy. Use the `glide in` command to enter
+// a shell (your default) with the GOPATH set to the projects _vendor directory.
+// To leave this shell simply exit it.
+//
+// If your .bashrc, .zshrc, or other startup shell sets your GOPATH you many need
+// to optionally set it using something like:
+//
+//		if [ "" = "${GOPATH}" ]; then
+//		  export GOPATH="/some/dir"
+//		fi
+//
+// For more information use the `glide help` command or see https://github.com/Masterminds/glide
 package main
 
 import (
@@ -11,7 +43,7 @@
 	"os"
 )
 
-var version string = "DEV"
+var version string = "0.2.0-dev"
 
 const Summary = "Manage Go projects with ease."
 const Usage = `Manage dependencies, naming, and GOPATH for your Go projects.
@@ -105,7 +137,6 @@
 		Using("offset").WithDefault(0).
 		Using("args").From("cxt:remainingArgs")
 
-
 	reg.Route("@ready", "Prepare for glide commands.").
 		Does(cmd.ReadyToGlide, "ready").
 		Does(cmd.ParseYaml, "cfg").Using("filename").From("cxt:yaml")
