Add libzfs_core and create new Makefile.am for it.

Update the zfs man page to document concurrent snapshots.

Updates to libzfs.h.
Patch most files in module/zfs.  Still working on dsl_dataset.c and zfs_ioctl.c.
Patch dmu_objset.c.  Since the changes to this file were so vast, my
strategy was to simply use the version of the file directly from Illumos
and then re-ZoL it.
Patch dsl_dataset.c:  The Illumos commit had a bunch of changes to pool
logging that had no corresponding code in the ZoL code.

The corresponding logging was removed as part of ZoL's commit 0443477.
Patch headers in sys/.
Patch zfs_ioctl.c.  This one will certainly need more work due to
its number of Linux-isms and other later Illumos changes such as
feature flags, etc. it has received.
Patch zfs.h.
Patch the rest of the header files.
Patch files in zcommon.
Update dsl_dataset_destroy() directly from Illumos.  The patched version was bogus.
Fix dsl_dataset_user_release_sync().
Update logging in spa_history_log_internal.
Copy spa_history_log_sync() from Illumos.  Add a missing comment block.
Replace log_internal() from Illumos.
Remove placeholder notes.  C90 declaration fixes.  Add missing zvec_legacy_func member to struct zfs_ioc_vec.
Change an instance of "cr" to CRED().  Add registration for zfs_ioc_(create,remove)_minor and
zfs_ioc_events_(next,clear) functions.
s/zfsvfs/zsb ... Minor milestone: all files from the zfs module now compile.
snapshot_one_impl stack reduction:  Move fsname off the stack.
I'm freeing it right away because it doesn't look like anything in the
dmu_objset_hold() call chain stashes it in a a way it will be needed later
(it is, however, copied at one point into another kmem_zalloc'd buffer).
Move the "skip:" label into #ifdef ZFS_DEBUG to suppress warning.
fnvpair.c: Export fnvlist_pack_free.