WIP: large type rename incoming.

Don't look at this PR, I will let you know when it is finished. I'm putting it up only as a warning to others that I'm tearing out all of our inappropriate interface{} usages and replacing them with runtime.Object, so let's avoid merge hell. I'll try to get it ready for merge early Monday morning.