I think a better API would be to have Context.Args() return a custom type that has `Get(n)` and `First()`. Something link: 
``` go
type Args []string
func (a Args) Get(n int) string {
  ...
}
func (a Args) First() string {
  ...
}
```
This makes the api cleaner and more OO