And probably more complicated than this, the number should probably be the size of the ndarray object, which has allocated space for the dimensions, strides as well as several other structure variables.  Numpy arrays aren't currently garbage collected, IIRC, so although gc uses this information I'm not sure it matters. I'm alsoe not quite sure what to do with view vs own_data distinction. Hmm... Maybe not quite as simple as I thought, although nbytes might be a good working solution in practice.

This example suggests data size should not be included for views
```
In [13]: sys.getsizeof([])
Out[13]: 72

In [14]: sys.getsizeof([1])
Out[14]: 80

In [15]: sys.getsizeof([1]*10)
Out[15]: 152

In [16]: sys.getsizeof([[1]*10])
Out[16]: 80
```
`__sizeof__` seems to be a "shallow" size.

@seberg @juliantaylor @pv Thoughts?