Basic conversion of types from 'IO' to 'UI'.
Turn 'UI' into a reader monad that tracks the current browser 'Window'.
Use 'UI' monad to streamline FFI calls.
'Buttons.hs' example now compiles and runs with 'UI' monad.
Add minor type signature.
Change 'BarTab' and 'InputElement' examples to 'UI' monad.
Rename 'Internal.Core' to 'Internal.Driver'. Replace a lot of primitives by FFI calls.
Convert 'Chat.hs' example to 'UI' monad.
Replace 'setStyle' primitive by FFI call.
Put duplicate code into 'elementsToElid' function to 'driver.js'.
Replace 'GetElementBy*' primitives with FFI calls.
Convert most of the examples to the 'UI' monad.
Add 'mousedown' and 'mouseup' event. Make coordinates for mouse events relative to the element.
Minor refactoring of the the Reactive modules.
Rename 'withWindow' to 'runUI'. Move 'UI' monad to an extra module.
Add 'liftIOLater' to allow first forms of recursion.
Remove 'MonadUI' module again.
Convert remaining examples to 'UI' monad.
Add 'CRUD' example. Recursion works! #54
Reorganize example code. The 'CRUD' example now compiles correctly with cabal.