add move constructor
use move constructor in json.yxx instead of copy constructor