[DevTools] Replace ViewportControl with ListControl.
This patch introduces a list control, which maintains an array-like model. This makes
it possible to update model efficiently (not in O(n) all the time).
It also improves fast smooth scrolling of viewport on mac (less flashes)
by using gap elements instead of absolute positioning.
Only supports fixed/measured height elements, variable height is coming next (to be used in treeoutline).
BUG=none
Committed:
https://crrev.com/c17e290fa034b6f07969f27aaa78ceb6b651c12b
Cr-Commit-Position: refs/heads/master@{#440919}