add more tests, update json-escape and fix for better support weird things