Json

Note: not necessarily indending to push this to zfsonlinux.  Creating a pull request seems to be the only way of leaving code review comments?  Let me know if I'm using github wrong.
code will be simpler (less casts) if you do:

nv_dict_props = fnvlist_alloc();
((nvlist_t**)cb->cb_data)[cb_nelem - 1] = nv_dict_props