add basic json serialization