fixed halo generator behavior when there are no halos
fixed buggy halo_generator -- important: changes behavior for AHFCatalogue -- previously, returned halo indices had halo_index+1 because AHF starts indexing at 1, so h[0:10] would return halos 1 through 10 instead of 0 through 9, which is weird and confusing. Now the slicing follows usual python convention.