Delays the error until the first call and then preserves it for others.
More closely matches the intent of the Object() calls. Loaders are now
lazy and don't need to return errors directly.
Sets the stage for collapsing unstructured and structured builders
together.
Kubernetes-commit: e298aa39c3de8ad1059861b7f78d62005ca87f88
This will allow us to recognize unstructured objects in the absence of
server side discovery info.
Kubernetes-commit: d77b95723c4fb67c87a0ec8c09d4054ae2c77ee1