Fix handling DATA_TYPE_BOOLEAN

DATA_TYPE_BOOLEAN (not to be confused with DATA_TYPE_BOOLEAN_VALUE) is a
special data type that never has an nvpair.  It's value is implied to be
true by its name's presence in an nvlist.