Address several points raised by @mhvk

@mhvk -- this addresses (mostly) the points you raised. Didn't address too much about how much like an `numpy.ndarray` the `data` must be or update the section about ABC pending discussion on the main thread.