Clean up ImplIntrospection class

Change-Id: I416e2cb8e22d200dfb72d512a4b4278ca582cd10
Clean up introspection caches

Change-Id: Ied10da0f491e7723245056a4c98540f8b56ffe5d
Use getTypes instead of getImplementationId as cache key

so we can hopefully deprecate getImplementationId and make all implementations
return an empty sequence.

Change-Id: I161b5fce727541ea2c8303b5d228dbc4939a55b6