tidier text blocks & gradient text
Color constructor can deal with Gradients now

- when calling color(g), a copy of the first color in the gradient is
returned. mostly seen when text is rendered after calling fill(c1, c2,
…)
reformatted and expanded tests

- added some additional text behaviors
- reénabled the image tests (and included a bitmap)
- now drawing baseline *behind* the test rows
Gradient gets a context manager

- hopefully this is the last of the places where having a Gradient
rather than a Color sitting in ctx._fillcolor confuses other grobs
now positioning text() more correctly

- text blocks calculate their center relative to the specified width &
height (or layout height if latter is unspecified)
- single-line text runs (without a specified width) now respect the
align() setting.