More robust infinite scroll for grid collections; refactor inifite scroll