Actually, why do we check to see that `JSONSerializableObject` returns a valid JSON object? Isn't that a requirement for the implementer?