* Ported GenericKubernetesApi from java along with other utilities
* Replace DeleteOptions for V1DeleteOptions
* Clean up and add clear()
* Clean up
* Removed TweakApiHandler
* Rename methods to follow "async" pattern
* Fix method naming
* Remove unneeded json property
* Rearrange httpsuccess logic
* Simplify dispose pattern
* Treat MockKubeServerFlags as flags
* Clean up flags logic
* Remove unneeded json properties
* Fix cs formatting
* Remove unused variable
* Move MockApi server options to seperate class and revert MockApi back to original
* Remove IRunnable
* Refactor config constants to use existing service account path
* port autorest to watch generator
* rename KubernetesWatchGenerator -> KubernetesGenerator
* add validate
* fix format
* fix generate code warnings
* fix line ending
* fix missing property found by comp check
* do not new http method
* add minikube as e2e test server
* fix format
* update env
* force no skip
* fix then
* finish skip test
* add skip blocker
* fix path
* output skipped case
* enable test env var
* final merge
* add missing file
* Add models for node metrics
* Add models for pod metrics
* Add extension method for node metrics
* Add extension method for pods metrics
* dotnet format
* fix type: use of interface type
* Add metrics sample
* Add tests for node and pod metrics
* Add support for HttpClientFactory with KubernetesClientConfiguration
* Add an example with http client factory
* ensure sample uses the latest version of C#
* Only keep WatchObjectAsync<T> in the manually-generated code
* Add a console application which can generate the various Watch methods
* Generate the Watch methods
* Use Nustache and templates to generate the watcher code
* Re-generate code