tidy up
more refactoring
simplify infinite scrolling