This is not technically a redirect; instead, it returns an HTML page with a
POST form, and some Javascript to automatically submit the form. This can be
useful when you need to post a plain link somewhere that needs to cause
changes on the server.

Send a Response. Please note: this function is rarely
necessary, and will disregard any changes to response headers and session
that you have already specified. This function short-circuits. It should be
considered only for very specific needs. If you are not sure if you need it,
you don't.

Misc

Lifting

The standard MonadTrans class only allows lifting for monad
transformers. While GHandler and GWidget should allow lifting, their
types do not express that they actually are transformers. This replacement
class accounts for this.

Changes to the response made inside the inner GHandler are
ignored (e.g., session variables, cookies, response headers).
This allows the inner GHandler to outlive the outer
GHandler (e.g., on the forkIO example above, a response
may be sent to the client without killing the new thread).

An extension of the basic WAI Application datatype to provide extra
features needed by Yesod. Users should never need to use this directly, as
the GHandler monad and template haskell code should hide it away.