Fix up ColorAndFontCSSGenerator to generate sound CSS and only as required

I discovered that I was generating invalid CSS:
    *  generating a null property value when there were no changes

       IEclipsePreferences#org-eclipse-ui-workbench {
          preferences:
       }

    * forgetting to generate the trailing semi-color ';'

This patch fixes the generated CSS.