Address remaining comments from #756

Rename Encoding to Codec, Versioning to ResourceVersioner.  Add
GoDoc.  Add Delete(key, recursive) to EtcdHelper
Yeah, I think I saw in your other PR these interfaces getting added to apiserver, also. Three places definitely makes me queasy. :)

I vote, for the moment: Put Codec in pkg/conversion, and ResourceVersioner in pkg/api. I think pkg/api is due for another split: we should separate it into two packages, one with general things for our API object system which plugins might reuse (like ResourceVersioner) and one for defining the specific core k8s codec.

Ah, I think the relevant distinction is this: JSONBase & functions supporting objects with embedded JSONBases should go into its own package. ResourceVersioner should be defined in that package. Let's do this in a separate PR.