Minor style question: could this omit the `home` var and return inside the if block? 
```
 if u, err := user.Current(); err != nil {
   return filepath.Join(".", ".hk", "plugins")
 } else {
   return filepath.Join(u.HomeDir, ".hk", "plugins")
 }
```