Adds support for Object states (Fixes #4)

Adds a naive `isEqual` implementation and updates spec to support `Object` states.
Haven't looked over this too closely but I suspect this plus the `.keys` below might misbehave for arrays and other things.