Renaming TimeRangePainter to TimePainter to make things less confusing.
Making painter calls take a rect bounds and adding input modifiers.
This enables click-to-select frames and marks.
Computing time range levels.
Sharing range rendering code between zone/mark/timerange painters.
Adding time range painting/hit testing/etc.
Also moving tooltip argument generation to util for now.
Adding d3 colors for time ranges.
Adding layout to painters.
Painters can now layout their children and optionally specify a size for
themselves. No more hardcoding offsets!