Fix JSON bug. Add tests