Initial Library Tests

This adds a new test-suite that uses the `Elm-Test`/`IO` libraries to test Elm libraries. It uses git submodules to pull those dependencies (and `automaton`, which `IO` depends on) in without using `elm-get`.

The script at `tests/hs/LibTest.hs` could probably be made more cross-platform, but works for me on Mac OS X and Fedora.

As for the tests themselves, I've added tests for `Trampoline` and translated some of the examples from the `String` documentation into testcases. I found a bad example in the documentation while doing this (pr coming soon).

The tests add a testing dependency on node.js. I don't know of a way to make that explicit in cabal.