>From what I understand, on each page request, this IHttpContextAccessoris wired up to its implementation, and then whenever it is referenced by services etc. (via constructors) it gets injected.
What is the wisdom behind this wrapper around httpcontext? Why not just call HttpContext.Current in your classes directly?