Import Control.Monad.Trans from mtl explicitly
Fix tests due to aeson breakage

Not entirely clear why the Rational that was in the demo type
declaration was causing problems; there is a FromJSON instance for
Rational = Ratio Integer. Anyway, doesn't matter; changing to Double
sorted it.