Fixed occasional incorrect scrolling when inserting/removing renderables
Added new 'ensureVisible' function which scrolls the view if necessary to ensure that an item is fully visible