Merge pull request #71 from kfl/canvas

Remove the use of `Data.Aeson.Generic` and use GHC Generics instead.