<p dir="auto">Need to be able to CRUD namespace resources.</p>
<p dir="auto">Do during or after the query-parameter -&gt; namespace-in-path transition.</p>
<p dir="auto">A namespace object just contains the name of the namespace, and no other data that I can think of at this time.</p>
<p dir="auto">An object cannot be created in a namespace unless the namespace object already exists.</p>
<p dir="auto">Reasons:</p>
<ul dir="auto">
<li>prevent accidental creation of new namespaces as a side effect of object creation with mistyped namespace name.</li>
<li>limit which users can create new namespaces, as there may be some policy around who can get which names.</li>
<li>to ease validation/warning about authorization policy, admission control policy, etc, which references namespaces.</li>
<li>to ease listing/watching namespaces in peripheral system components.</li>
</ul>
<p dir="auto">We only use the StatusReason consts defined in pkg/api/types.go.<br>
Some of the constants are duplicated in api/types and api/v1beta{1,2,3}/types.go  while some are not.</p>
<p dir="auto">Since StatusReason* constants defined in api/v1beta{1,2,3}/types.go are not used anywhere, can we just delete them?</p>