Pass the Request to the exception handler

We change the exception handler to take Maybe Request, because some
exceptions will happen before we have managed to parse a Request yet.

Add an exception handler to everything just after the Request is parsed
that does pass the Request through.

This allows the exception handler to give more useful data to the
application developer.

Closes #173
Merge pull request #177 from singpolyma/pass-request-to-exception-handler

Pass the Request to the exception handler
Introducing the yield hack.

See http://www.haskell.org/pipermail/web-devel/2013/002641.html
removing dead comment.
reducing warnings.
reducing warnings.
Merge branch 'no-resourcet3' into no-resourcet-tuning

Conflicts:
	warp/Network/Wai/Handler/Warp/Run.hs
removing unnecessary import.
Using our receive.

fixme: no free recieve-buffer yet.
proper naming.
implementing free.
more proper name.
adding missing module.
Merge pull request #180 from yesodweb/no-resourcet-tuning

Yield hack and a new receive function.