Make most of the haste-lib IO stuff work in any MonadIO.
Replace Readable and Showable by generic JSType <-> JSType conversions.
Clean up Haste.Concurrent a bit.
Display compilation messages when running a single test with runtest.sh.
Fix some JSType bugs.
Bring tests up to speed with the latest haste-lib.
Reintroduce State# RealWorld internally.

State# RealWorld values are now passed around again, but never examined, never
stored in data structures and never passed to FFI functions or primops.
Fix broken putMVar.

Previously, threads would block on putMVar until another thread read that MVar
instead of getting woken immediately after a successful write.
Add peekMVar to Haste.Concurrent.
Remove redundant rounding ops.
Fix silly typo in Integer.js.
Use underscore for State# RealWorld argument passing.
Fix Double/Float -> Int conversion primops.