Install virtual-list-demo.html as an app.
Update list style so background scrolls with list and avoid overlapping text.
Delete nodes instead of reusing them.
Recycle nodes, but detach and reattach to the DOM to avoid layer crazyness.
Update lastScrollPos so we detect scroll direction correctly.
Move list into a scrollable div to better represent what our apps do.
Chain requestAnimationFrame() calls to minimize required nodes.
Make item population async to support loading from IDB, etc.
Make virtual-list-demo app auto-adjust height for device.