(PUP-3345) Fix memory leak / remove cache of "non-deprecation" resource
A memory leak was introduced by caching all resource types that does
not handle deprecations (all types but one). This caused the problem
because the cache was held as a class instance variable and was never
evacuated.
This changes the Puppet::Resource class to not cache non-deprecation
resources.