Change toJSON and fromJSON instances for Either.
Change toJSON and fromJSON instances for Either.

Previously, fromJSON . toJSON == id was violated by the Either
instances. In addition, if both types are parsable from the same
JSON, then the Left is always given favor - which is probably not
desirable. Instead, differentiate the instances using an array.

This allows for "Either a a" to actually work instead of always
chosing Left in FromJSON.

lpsmith/aeson,timmytofu/aeson