Add custom palettes and commentlinks

Allow the user to modify the palette and create entire custom palettes
in the config file.

Add support for commentlinks, where matching text can be reformatted
and color added.  A future possibility is adding clickable buttons to
the text.  The following snippet in .gertty.yaml will format and colorize
the Zuul messages:

palettes:
  - name: default
    test-SUCCESS: ['light green', '', '']
    test-FAILURE: ['light red', '', '']

commentlinks:
  - match: "^- (?P<job>.*?) (?P<url>.*?) : (?P<result>.*?) (?P<rest>.*)$"
    replacements:
      - text: "{job:<42}"
      - text:
          color: "test-{result}"
          text: "{result} "
      - text: "{rest}"

Change-Id: Ib4644edd42333f2ef252a6318182efeff16ce1e1