changing the clamp_width of an ArdourCanvas::Text needs to potentially provoke an entire redraw

This fixes missing range marker text in sessions where the initial zoom value causes an initial clamp_width of zero
add API to extract color from ArdourCanvas::Text and tidy up member declarations

Conflicts:
	libs/canvas/canvas/text.h