JIT: keep ref count for runtime generic context lookups
Keep a ref count for runtime generic context lookups, and track when
an inlinee requires a runtime lookup but then ignores the resulting
context. Only report/keep the context alive if there are known uses.
This pattern happens frequently in inlined generic code that uses
type tests to extract properties of types.
Addresses dotnet/coreclr#1691.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5a1e02cd6f056cebdd1c240d400ac7a34234d43a