* Add interfaces for generated Kubernetes objects that can allow working with them without using concrete types. This work is needed for future shared informers / controllers components being developed
* Add metadata for plural names. This opens up a path for many generic operations as plural name is needed to construct path
* - Implement common interface across all Kubernetes elements
- Add ApiVersion, Kind and Group properties
* Add IKubernetesObject interface
* Regenerate code
* Fixup after rebase
* Fixes after rebase, make method names consistent