membership reimplemented using a Numpy table for memory saving
updating clusters now uses the numpy array as well
membership can run successfully, changed data type to int32 to save memory