Fix insertions above the visible index
The first visible item was repositioned incorrectly after an insertion
above the visible index since any insertions above the position + cache
buffer were ignored and not considered for repositioning the first item.
GridView insertion code has changed to be similar to the ListView
implementation to fix various issues when inserting above the visible
index and to remove code that crossed indexes from visibleItems with
model indexes and visible indexes.
Also adds extra insertion tests for ListView and GridView.
Change-Id: I5e129c605fdad733b61bd29850465b3b752fb63f
Reviewed-on: http://codereview.qt-project.org/6485
Reviewed-by: Bea Lam <bea.lam@nokia.com>