Empty `Vec`s have a dummy pointer that is set to the alignment of the item type. Thus, the pointer for empty `Vec<u8>` data is `0x1`. Using this pointer to construct a `ArrayData` instance can lead to alignment errors if the arrow array is of a type with larger alignment, e.g. float64. This commit fixes the alignment error by checking for an empty raw buffer and constructing an empty `ArrayData` instance in this case. Fixes #362tags/v0.3.0-rc