>I'm not really sure how a factory is going help you in capturing what essentially are system events. Global.asax is the low level ASP.NET pipeline and every thing fires through that. You can abstract out global.asax code by using HttpModules which basically allow you to capture events independnently of the application and reuse that functionality, but that's still within the context of an event driven approach.
Thanks for the additional information