Only use Color objects in UI API

Designer's prerogative :)

Since that makes the Lua side slightly more awkward, default a missing alpha value coming in from Lua to 1.0.

For the record, I'm not at all enthusiastic about colours being set explicitly in UI code. One day they will be set up as part of skin configuration, and you'll fish them out of some global namespace (eg color.warning). That way the skin can select colours with proper contrast etc. But for now this is fiine.