Add the TExpQ type alias.
Correctly pretty-print let and do expressions.
Add support for top-level finalizers
Add Template Haskell state.

The Quasi monad can now carry state, and this state can be shared amongst
quasiquoters/splices/etc. State is stored in a finite map of Dynamic values and
is indexed by TypeReps.