"I just wonder why the IIS team didn't make the managed part of 7's support at a much lower level, and abstracted asp.net on top of that.. this way they could have enabled developers to write managed code that works at a lower level, and could enable a lot of innovation and research."
Not sure what your asking here. You can plug in anywhere in IIS7. Not sure how much deeper you can get without just writting your own http server.
http://weblogs.asp.net/scottgu/archive/2007/04/02/iis-7-0.aspx"You can now write code anywhere within the lifetime of any HTTP request by registering an HTTP Extensibility Module with the web-server. These extensibility modules can be written using either native C++ code or .NET managed code (you can use the existing ASP.NET System.Web.IHttpModule interface to implement this).
All "built-in" IIS7 functionality (authentication, authorization, static file serving, directory listing support, classic ASP, logging, etc) is now implemented using this public modular pipeline API. This means you can optionally remove any of these IIS7 "built-in" features and replace/extend them with your own implementation."
ASP.NET on IIS 7.0 has itself been changed from being implemented as an ISAPI to instead plug in directly as modules within the IIS7 pipeline: