Yet more non-controversial fixes from #2277

Fixing namespace handling + kubectl describe refactor
Was originally structured this way so that the caller didn't have to have an initialized client to get a describer (for instance, if we add ComponentPlugins and have to talk to the server to get information about what component plugins are installed before we can initialize describer).  The simplification is fine for now, since that's probably further out.