Rework the LPD8806 driver to support the new 1D graphics capability interface.

Functionality is basically the same as before but now the display driver
has no intrinsic display buffer so various different buffer bitmap
implementations are now possible.

Also includes some re-jiggering of the way colors are modeled to make
it easier to instantiate colors separately from instantiating the display
driver, and to make the function constexpr so it's easier to use
in creating statically-allocated color palettes.