Two problems with the binning widget:
- memory explodes
- dtype was float64 instead of preserving the dtype
- binned data was allocated twice (once as a list of numpy arrays which was then converted to a numpy array)
- "apply" signal handler does not take any arguments