master merge; new files not added after initial cairocanvas patch application