go: fix golint errors and some general cleanup/consolidation.

+ Added comments for exported funcs and fixed some other nits per complaints from golint.
+ Consolidated shorter type definitions into a single file.

R: @tessr @dpup 
Up to what you two think, really. I consider un-exported constants or vars more readable when the context in which they’re used is near their decls. In the godoc they will always be at the top of the page no matter what (should they be exported).