part one of allowing region drag to the bottom (drop-zone) rect of track canvas
non-copy region drag now creates a new track when a region is dragged to the drop zone
initial redesign of canvas scrolling to facilitate independent x- and y-axis scrolling of specific groups within the canvas.

This commit should cause no change in behaviour, but contains all the code and changes necessary
for the next step
remove unused variable
different approach to independent scrolling, involving ArdourCanvas::ScrollGroup

The idea now is that a scroll group item can be added to the canvas which will causes its children to scroll in either or both
directions (horizontal or vertical). There are few complications: the position() of the ScrollGroup is ambiguous depending
on whether you want it with scroll taken into account or not, so Item::canvas_position() was added, which defaults to
the same value as Item::position() but is overridden by ScrollGroup to return the position independent of scrolling. This
method is used when translating between item/canvas/window coordinate systems.

Note that the basic idea is that we MOVE the scroll group when a scroll happens. This mirrors what happens in the GnomeCanvas,
where Nick Mainsbridge came up with a great idea that allowed unification of the time bar and track canvases.
whitespace deletion
remove incorrect calls to Editor::maybe_autoscroll() from specific Drag classes (autoscroll is handled by the Drag manager)
avoid recursing through the entire canvas when scrolling - only scroll explicitly identified ScrollGroups
remove timebar canvas and just use a single canvas instead. This is just part one - lots of minor fixes to be done
inline ScrollGroup::canvas_position() for no particular reason
remove timebar canvas item from markers
rationalize and centralize computation of positional offset and scroll offset for canvas items
remove useless groups from timebar area, clarify scroll group naming in editor
remove utterly useless unused code
clean up ArdourCanvas::Arrow implementation to remove unshown polygon/head
various changes to get independent scrolling to work better in canvas. mostly tweaks relating to how scroll offsets are used during rendering.

Event handling offsets still require work.
use window-based coordinates when picking current item so that we get per-item (per-scroll-group,really) computation of position and coverage.
fix missing leftover Canvas::pick_current_item() which was confusing button release event coordinates
more profound changes to canvas scrolling, in particular find appropriate ScrollGroup for Canvas::{window,canvas}_to_{canvas,window}()
merge onecanvas and cairocanvas branches, and manually resolve conflicts, including rounding in item_to_window() methods