Add support for hole_birth

If the com.delphix:hole_birth feature flag is set, the birth txg is
stored in "hole" block pointers.  This patch updates the macros and the
gang block-reading code to support the feature.
Add support for embedded data

The embedded_feature allows for small highly-compressible object's data
to be stored in a block pointer rather than actually being pointed
to by the block pointer.  This patch also adds recognition of the
"embedded_dataset" feature.