Issue #226 -  Fixes an issue where cells weren't being drawn

- When the bounds were being updated frequently removing old cells first would sometimes result in the superview of a visible view being nil. Adding new cells first prevents this and allows us to optimize the creation of the allVisibleItemKeys set by only iterating over _allVisibleViewsDict once.