Test Re-org and Start Property Testing

I've switched to using test-framework over HTF and re-organized the old tests in the process. It's set up to be very easy to add new test suites.

I've also started writing some QuickCheck property tests for the parser/pretty printer. The quickCheck Literal generator needs some work (it produces some Strings that aren't valid elm strings) but it's already caught one (minor) bug: https://github.com/evancz/Elm/issues/420 . 

See the commit messages for more detail.