Grid::trim(): only trim when actually changed and some minor code cleanup.
Grid::expand(): code cleanup.
Grid::copy() and cut() now clear clipboard prior to adding more events to it.
event_list::copy_selected() now uses the first selected event as the time offset rather than first event.
Canvas::damage_grid() now intersects viewport with damaged grid region, rather than rejecting the region if it goes outside of the viewport.
Pattern/phrase number value slider maximum now initialized properly.
Pattern/phrase previous/next hotkeys '[' and ']' now clamp properly.