With printf() / snprintf() etc "%f" actually requests a double, not a float

Let's pass the correct type, since we can't rely on these functions to do intelligent conversion
Replace individual waf options for enabling backends with one --with-backends option
ensure that Ardour recognizes its own MMC device ID as "all-call" when set to 0x7f (127)
move creation of UIConfiguration object to precede creation of ArdourUI.

This is pretty kludgy but we need the UIConfiguration object (or any color management object) to be the first to connect to
the ColorsChanged signal.

Might be better to make the UIConfiguration object a delegate for the ThemeManager.
massive reworking of color selection implementation
save base colors (configurable colors) in normal way (code had been removed)
add default values for base colors (configurable colors) to default_ui_config.in
add back grays
newly generated, quantized-hue relative color definitions
continue tweaks on the color road
get correct ::distance() and ::delta() implementations for cases involving achromatics
variable name change for slightly increased clarity
remove "port sources" management from MidiControlUI and Mackie support.

    This was necessary due to a bug/design issue between Glibmm and Glib (see https://bugzilla.gnome.org/show_bug.cgi?id=561885)
 but the problem needs to be managed by the *creator* of the IOSource and that has now moved inside CrossThreadChannel.
Fix calculation using uninitialized value.

Implicit "this" is the devil.
Remove dead code.
change extention of linux installers to .run
Add some newly introduced source files to our MSVC project (cairocanvas)
Add some newly introduced header files to our MSVC project (gtk2_ardour)
Set the toggled default metadata of parameters.

This is so generic code looking at the Parameter for gain, solo, and
rec-enable will get the correct value for toggled.
Remove redundant calls to start/end_touch.

The controllers do this automatically.