Add support for object line colour and improve colour preferences

* Refactor into ILineObject
* Editor support for object line colour
* Makeover for Color Preferences
* Default colors are saved in model file
Use darker default line colour
Re-instate option to save user default colours and improve Format Painter

* Option to save user default colours in file re-instated
* Improve logic for what is a "default" user colour - depends on the Prefs option
* Improve Format Painter - can copy between connections and elements
Add support for default connection line colour in Preferences

* Also fix some bugs from before
Add option to derive element line colour from fill colour
Merge branch 'line_color_prefs'