This is one of the major changes, in that sense that the `GlimpseRequestContextHandle` now knows whether or not we are dealing with a resource request or a plain request (this is especially important for the `GlimpseMiddelware`. Keep in mind that if the `runtimePolicy == RuntimePolicy.Off` that we then return an `UnavailableGlimpseRequestContext` instance that indicates that Glimpse is Off and does not gather data for the current request.

So unlike with v1, if the request is a resource request, no tabs will be processed. It might have looked that Glimpse worked like that before with the check for the `HasOffRuntimePolicy` and that the `ExecuteResourceOnly` enum value is a flag combined with the `Off`, but the catch here is that the runtime policy is checked for the `BeginRequest` event and not for the `ExecuteResource` runtime event, which means that the only `IRuntimePolicy` that changes the policy to `ExecuteResourceOnly` is the `GlimpseResourcePolicy` and that one only runs at `ExecuteResource` runtime event....

Either way, this is now solved as well. So to be clear, the `BeginRequest` will always return a `GlimpseContextRequestHandle` albeit an `UnavailableGlimpseRequestContextHandle` that doesn't point to a `GlimpseRequestContext`