This is really really cool!
As an aside though, I feel like we need some protocol for on-save junk. GoImports, GoFmt, Stencil, ... all are trying to implement a bunch of functionality on save.
Is there a good way to handle this? Both GoImports and Stencil implement GoFmt (I believe), what's a better way to do this?