A lot of packages use StringSet, but they don't use anything else from
the util package. Moving StringSet into another package will shrink
their dependency trees significantly.
This commit merges the NamespaceExists admission controller
into the NamespaceLifecycle admission controller.
New tests were added to the NamespaceLifecycle addmission controller
tests, and the test case was fixed so that it runs without panicing.
Additionally, the NamespaceExists admission controller was marked as
deprecated in the docs.
Closes#12053
Standardize how our fakes are used so that a test case can use a
simpler mechanism for providing large, complex data sets, as well
as represent queries over time.