Fixed a lot of bugs in the async pipeline implementation.

Additionally while fixing the bugs:

Implemented dynamic module loading support.
Set the current context to null after finishing the work.
Do not reuse a HttpApplication instance when a inner module has thrown an exception.