Add spec tests.

This adds tests for all elements we can create during regular
parsing. This also adds tests for text with unicode in it.
Fix ticket #247.

I do the same thing that the XHTML backend does: give these no special
treatment and just act as if they are regular functions.
LaTeX tests setup
Fixes #253
Use Hspec instead of nanospec

This is motivated by the fact that Haddock tests are not ran by the
GHC's ‘validate’ script so we're pretty liberal on dependencies in that
area. Full Hspec gives us some nice features such as Quickcheck integration.