Update `driver.js` to fit with the JSON encoding of sum types that `Data.Aeson.genericToJSON` use. Thus really fixing #71.
Make the assumptions in `driver.js` regarding the JSON encoding of sum
types explicit in `Types.hs`.
Merge remote-tracking branch 'upstream/develop' into canvas

Conflicts:
	src/Graphics/UI/Threepenny/Internal/Types.hs
Remove unused module `Data.Aeson.Generic'
Make the JSON encoding of Instructions more JSON-idiomatic.

This is done so that we can avoid the `for(var key in event)`
construct in `driver.js` which is both brittle and somewhat
non-deterministic.
Merge pull request #73 from kfl/canvas

Update `driver.js` to fit with the new JSON encoding of sum types