Recent illumos/Delphix features

This patch stack brings most of the missing ZFS features from Illumos into ZoL.

 - dweeezil/zfs@743e735 Adds a histogram to zdb
 - dweeezil/zfs@dad9948 Adds a histogram to space maps (feature@spacemap_histogram)
 - dweeezil/zfs@63153ae Fix to allow zdb to exit properly
 - dweeezil/zfs@ac05f44 Add feature@extensible_dataset 
 - dweeezil/zfs@816c32b Zfs send hole improvements (feature@enabled_txg, feature@hole_birth)
 - dweeezil/zfs@2245185 Adds bookmarks 

This set will need a lot of review and testing.  There was a bit of interference with existing ZoL-specific features.  In particular, the space map/metaslab changes interfered with FASTWRITE (zfsonlinux/zfs@920dd52) and the bookmark facility interfered with the ```zfs list -t snapshot``` speedups in zfsonlinux/zfs@0cee240.

Also, the hole-send-avoiding code introduced the need for atomic_swap_64() which we don't (seem to) have in the Linux kernel so I punted and tried to emulate it with a spinlock.

Other than that, these changes ported fairly cleanly and should bring the ZoL code base much more in line with current Illumos code.  The usual disclaimers apply for the moment: don't use on production pools, etc.  It does, however, seem to function and has passed 10-20 minutes of ```ztest``` testing.