Horizontal scrollbar

## Problem

We want a horizontal scrollbar.

## Solution

Add one. I did this by modifying the existing scrollbar to add an option to make it horizontal. Then you instantiate two scrollbars, one vertical, one horizontal. The scrollbars now also work for peek and single modes. They do this by using the item map, if one is available, instead of the list map.

## Tests

Updated.

## QA Instructions

Check out the branch, tests should pass. Open the scroll list demo, zoom in, then fiddle with the horizontal scrollbar. No regressions.
Really minor comment: `// Put the scroller in the track, and the track in the scrollbar`