scrollContainer fix for infinite scroll

Currently, the scrollContainer is used for both the scroll position checking and as the list rendering container. This was causing all items to be loaded when using a scrollContainer. This fix splits the scrollContainer from the listContainer, and causes elements to only be loaded when necessary.

Fix for #3114