Fixes panic: Darwin requires non-NULL 3rd arg to copyinstr. Fixes panic: zfs_set_version should use new spa_history_log_internal not old MacZFS spa_history_internal_log. And lastly: don't free history string from userland before the ioctl can use it.
vn_rdwr() no longer works the way it used to, giving invalid fd for vnode,
pipes and sockets. Undo the kernel work, make it back to vnode only, then
change userland to create tmp pipe /tmp/ and start an IO copy thread.
This brings us back to working send/recv with pipes, with Apple approved
kernel calls.
Ironically, userland starts a thread for dedup send/recv already.
Merge branch 'master' of github.com:zfs-osx/zfs
Merge remote branch 'upstream/master'

Conflicts:
	include/sys/dmu.h
	module/zfs/zfs_ioctl.c