add JSON decoder by Jeff Friedl